Cascader 级联选择
代码演示
import 'package:antd_flutter_example/demo_block.dart';
import 'package:flutter/widgets.dart';
import 'package:trionesdev_antd_mobile/trionesdev_antd_mobile.dart';
class CascaderPickerPage extends StatefulWidget {
const CascaderPickerPage({super.key});
@override
State<StatefulWidget> createState() => _CascaderPickerPageState();
}
class _CascaderPickerPageState extends State<CascaderPickerPage> {
final List<AntCascaderPickerOption> _options = [
AntCascaderPickerOption(label: "江苏", value: "jiangsu", children: [
AntCascaderPickerOption(label: "泰州", value: "taizhou", children: [
AntCascaderPickerOption(label: "泰兴", value: "taixing"),
AntCascaderPickerOption(label: "靖江", value: "靖江"),
]),
AntCascaderPickerOption(label: "苏州", value: "suzhou"),
AntCascaderPickerOption(label: "无锡", value: "wuxi"),
]),
AntCascaderPickerOption(label: "山东", value: "shandong"),
AntCascaderPickerOption(label: "浙江", value: "zhejiang"),
AntCascaderPickerOption(label: "上海", value: "shanghai"),
AntCascaderPickerOption(label: "广东", value: "guangdong"),
AntCascaderPickerOption(label: "福建", value: "fujian"),
AntCascaderPickerOption(label: "云南", value: "yunan"),
AntCascaderPickerOption(label: "贵州", value: "guizhou"),
AntCascaderPickerOption(label: "四川", value: "sichuan"),
AntCascaderPickerOption(label: "湖南", value: "hunan"),
AntCascaderPickerOption(label: "湖北", value: "hubei"),
AntCascaderPickerOption(label: "河南", value: "heinan"),
AntCascaderPickerOption(label: "河北", value: "hebei"),
];
@override
Widget build(BuildContext context) {
return AntScaffold(
appBar: AntAppBar(
title: const Text('CascaderPicker'),
),
body: SingleChildScrollView(
child: Column(children: [
DemoBlock(
title: "基本使用",
child: AntButton(
text: "CascaderPicker",
onPressed: () {
showAntCascaderPicker(
context: context,
options: _options,
maxHeight: 400,
onOk: (value) {
print(value);
});
}),
),
DemoBlock(
title: "设置默认值",
child: AntButton(
text: "CascaderPicker 默认值",
onPressed: () {
showAntCascaderPicker(
context: context,
value: ["jiangsu", "taizhou"],
options: _options,
maxHeight: 400,
onOk: (value) {
print(value);
});
}),
),
DemoBlock(
title: "设置默认值,并自动滚动到对应位置",
child: AntButton(
text: "CascaderPicker 默认值",
onPressed: () {
showAntCascaderPicker(
context: context,
value: ["hebei"],
options: _options,
maxHeight: 400,
onOk: (value) {
print(value);
});
}),
)
]),
),
);
}
}