Виджет Radio
Виджет Radio принимает groupValue и onChanged. Есть adaptive.
Синтаксис
Radio<int>(value: 1, groupValue: 1, onChanged: (_) {})
Параметры
| Параметр | Описание |
|---|---|
value |
Значение пункта. |
groupValue |
Текущий выбор группы. |
onChanged |
Вызывается при выборе. |
Методы
| Метод | Описание |
|---|---|
adaptive |
Рисует переключатель одного варианта из группы в стиле текущей платформы. |
Пример
Давайте выведем радиокнопку:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Radio<int>(value: 1, groupValue: 1, onChanged: (_) {}),
),
),
),
);
}
На экране элемент управления по центру.
Пример
Давайте включим состояние через State:
import 'package:flutter/material.dart';
void main()
{
runApp(const MaterialApp(home: Demo()));
}
class Demo extends StatefulWidget
{
const Demo({super.key});
@override
State<Demo> createState() => _DemoState();
}
class _DemoState extends State<Demo>
{
int group = 1;
late Widget bodyWidget = Radio<int>(value: 1, groupValue: group, onChanged: (v) => setState(() => group = v!));
@override
Widget build(BuildContext context)
{
return Scaffold(
body: Center(child: bodyWidget),
);
}
}
На экране можно переключить значение нажатием.
Смотрите также
-
метод
adaptive,
который выбирает вид под платформу -
виджет
RadioListTile,
который ставит вариант в строку списка -
виджет
RadioGroup,
который связывает группу переключателей -
перечисление
ListTileControlAffinity,
который ставит флажок слева или справа