Кнопки — неотъемлемая часть любого пользовательского интерфейса, и Flutter предоставляет множество способов их создания. В этой статье мы сосредоточимся на контурных кнопках, которые имеют рамку, которая становится видимой при нажатии кнопки. Мы рассмотрим несколько методов реализации контурных кнопок во Flutter, дополненных примерами кода. Итак, давайте углубимся и откроем для себя разные подходы!
Метод 1: использование виджета OutlineButton
Самый простой способ создать контурную кнопку во Flutter — использовать виджет OutlineButton
. Вот пример:
OutlineButton(
onPressed: () {
// Handle button press
},
child: Text('Outline Button'),
)
Метод 2. Стилизация FlatButton
Другой способ добиться эффекта контурной кнопки — настроить виджет FlatButton
так, чтобы он имел рамку. Вот как это можно сделать:
FlatButton(
onPressed: () {
// Handle button press
},
child: Text('Outline Button'),
shape: RoundedRectangleBorder(
side: BorderSide(
color: Colors.black,
width: 1.0,
),
borderRadius: BorderRadius.circular(8.0),
),
)
Метод 3: создание пользовательского виджета кнопки
Если вы предпочитаете больше контроля над внешним видом кнопки, вы можете создать собственный виджет кнопки, объединив GestureDetector
и 7. Вот пример:
GestureDetector(
onTap: () {
// Handle button press
},
child: Container(
padding: EdgeInsets.all(12.0),
decoration: BoxDecoration(
border: Border.all(
color: Colors.black,
width: 1.0,
),
borderRadius: BorderRadius.circular(8.0),
),
child: Text('Outline Button'),
),
)
Метод 4. Использование виджета InkWell
Виджет InkWell
создает волновой эффект при нажатии кнопки. Объединив его с Container
, мы можем создать контурную кнопку с волнистым эффектом:
InkWell(
onTap: () {
// Handle button press
},
child: Container(
padding: EdgeInsets.all(12.0),
decoration: BoxDecoration(
border: Border.all(
color: Colors.black,
width: 1.0,
),
borderRadius: BorderRadius.circular(8.0),
),
child: Text('Outline Button'),
),
)
В этой статье мы рассмотрели несколько методов создания контурных кнопок во Flutter. Мы рассмотрели использование встроенных виджетов, таких как OutlineButton
и FlatButton
, а также создание пользовательских виджетов кнопок с помощью GestureDetector
и 13<. /с>. Используя эти методы, вы можете создавать контурные кнопки, соответствующие визуальному стилю вашего приложения. Поэкспериментируйте с разными подходами и выберите тот, который лучше всего соответствует вашим требованиям.