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