Вы когда-нибудь сталкивались со сценарием, в котором вы хотели, чтобы пользователь изменил размер виджета, но не знали, как это сделать? Ну, я был в похожей ситуации некоторое время назад, и я решил собрать пакет в качестве решения.

auto_size_widget позволяет пользователю изменять размер любого виджета Flutter. Это особенно полезно для текстовых полей, если пользователь хочет расширить поле или увеличить изображение для лучшей видимости, и многое другое.

Ниже приведены атрибуты пакета:

showIcon:(логическое значение) auto_size_widget по умолчанию имеет значок изменения размера, если вы не хотите, чтобы он отображался в виджете, установите значение false, однако по умолчанию это значение true.

initialWidth: начальная ширина виджета, размер которой впоследствии можно изменить.

Установите то же значение, что и maxWidth, чтобы сохранить постоянную ширину виджета.

initialHeight:начальная высота виджета, размер которой впоследствии можно изменить.

Установите то же значение, что и maxHeight, чтобы сохранить постоянную высоту виджета.

maxWidth: максимальное значение, которое может быть достигнуто при изменении размера. Если то же, что и initialWidth, пользователь не может изменить ширину виджета.

maxHeight: максимальное значение, которое может быть достигнуто при изменении размера. Если то же, что и initialHeight, пользователь не может изменить высоту виджета.

child: виджет, размер которого будет изменен.

borderColor: необязательный параметр, задающий цвет границы AutoSizeWidget

boxDecoration:необязательный параметр, задающий оформление для блока AutoSizeWidget.

Некоторые из распространенных виджетов, с которыми можно использовать auto_size_widget:

  1. Автоматический размер изображения:

Этот виджет может изменять размер дочернего виджета (изображения). Здесь я установил равные значения для maxWidth и maxHeight. И разные равные значения для initialWidth и initialHeight.

Это изменяет размеры как высоты, так и ширины виджета.

2. Автоматический размер текстового поля (постоянная высота):

Здесь TextField обернут AutoSizeWidget, ширина TextField может быть изменена со значения 180 до 300. Однако высота остается постоянной и не изменяется во время изменения размера.

3. Автоматический размер текста (постоянная ширина):

Здесь виджет Text обернут AutoSizeWidget. Высота виджета Text может быть изменена от 120 до 280. Здесь width остается постоянным и не меняется при изменении размера.

AutoSizeWidget поставляется с boxDecoration по умолчанию, который действует как руководство, когда пользователь изменяет размер виджета.

Вы можете пропустить это поле, передав собственное значение параметра boxDecoration или установив borderColor как Colors.transparent. Однако рекомендуется оставить значение по умолчанию, так как оно служит определенной цели.

Вот как будет выглядеть виджет после удаления рамки и когда showIcon будет true:

Вы можете обернуть AutoSizeWidget любой виджет Flutter, размер которого впоследствии может быть изменен пользователем. Этот пакет может быть полезен, особенно при создании веб-приложения.

Это все на данный момент. Не стесняйтесь оставлять любые предложения в комментариях и делиться ими, если вы нашли это полезным!

Следите за сообществом Flutter в Твиттере: https://www.twitter.com/FlutterComm