TileLayoutCalculator class
Калькулятор для оптимального размещения плиток в заданной области.
Алгоритм находит оптимальное количество строк и столбцов для минимизации пустого пространства, рассчитывает размер плиток с сохранением пропорций и определяет позиции каждой плитки с учетом выравнивания.
Constructors
- TileLayoutCalculator({required Size layoutSize, required int itemCount, required int maxItems, required Size itemPadding, required Alignment alignment, double? aspectRatio, Size? maxItemSize, EdgeInsets gridPadding = EdgeInsets.zero})
Properties
- alignment → Alignment
-
Выравнивание сетки внутри области
final
- aspectRatio → double?
-
Пропорции плитки (width / height). Если null, используется 1:1
final
- gridPadding → EdgeInsets
-
Внешние отступы сетки от границ области
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- itemCount → int
-
Количество плиток для размещения
final
- itemPadding → Size
-
Отступы между плитками (width = горизонтальный, height = вертикальный)
final
- layoutSize → Size
-
Размер области для размещения плиток
final
- maxItems → int
-
Максимальное количество плиток в области
final
- maxItemSize → Size?
-
Максимальный размер плитки. Если задан, плитка не будет больше этого размера.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
calculateGrid(
) → ({int columns, Offset gridOffset, Size itemSize, int rows}) - Рассчитывает метрики сетки без вычисления позиций всех плиток.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited