Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
711 of 1024 menu
◀ ▶

Класс VisualDensity

Класс VisualDensity описывает сжатие по горизонтали и вертикали для кнопок, списков и других виджетов Material. Значение передают в visualDensity у ThemeData. Готовые константы: standard, compact и comfortable. Числа задают поля horizontal и vertical.

Синтаксис

VisualDensity.compact

Параметры

Параметр Описание
horizontal Насколько плотнее или свободнее раскладка по горизонтали.
vertical Насколько плотнее или свободнее раскладка по вертикали.

Пример

Давайте включим компактную плотность в теме:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( theme: ThemeData( visualDensity: VisualDensity.compact, ), home: Scaffold( body: Center( child: ElevatedButton( onPressed: () {}, child: Text('abcde'), ), ), ), ), ); }

На экране кнопка 'abcde' станет ниже и уже из-за VisualDensity.compact.

Пример

Давайте зададим comfortable для просторных отступов:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( theme: ThemeData( visualDensity: VisualDensity.comfortable, ), home: Scaffold( body: Center( child: ListTile( title: Text('12345'), subtitle: Text('abcde'), ), ), ), ), ); }

На экране ListTile с текстами '12345' и 'abcde' получит больше вертикального места.

Смотрите также

  • класс ThemeData,
    куда передают visualDensity
  • виджет ListTile,
    высота которого зависит от плотности
  • виджет ElevatedButton,
    который учитывает VisualDensity
  • класс Padding,
    который задаёт отступы вручную, а не через тему
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить