Flutter开发(二十四):ExpansionTile可展开列表

利用 ExpandionTile 可以实现可以展开收起的列表。

这是里面的构造方法:

  const ExpansionTile({
    Key? key,
    this.leading,//标题左侧展示
    required this.title,//展示标题的widget
    this.subtitle,
    this.onExpansionChanged,//展开收起回调函数
    this.children = const <Widget>[],//展开是显示的内容wedget
    this.trailing,//标题右侧展示的widget
    this.initiallyExpanded = false,//默认展开/收起
    this.maintainState = false,
    this.tilePadding,//标题右侧展示wigget
    this.expandedCrossAxisAlignment,
    this.expandedAlignment,
    this.childrenPadding,
    this.backgroundColor,
    this.collapsedBackgroundColor,
    this.textColor,
    this.collapsedTextColor,
    this.iconColor,
    this.collapsedIconColor,
    this.controlAffinity,
  })

代码示例如下:


class MyApp extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Tabbed AppBar'),
        ),
        body: getLv(context),
      ),
    );
  }

  Widget getLv(BuildContext context) {
    return Center(
      child: ListView(children: <Widget>[
        ExpansionTile(
            title: const Text('Sublist'),
            backgroundColor: Theme.of(context).accentColor.withOpacity(0.025),
            initiallyExpanded: false,
            children: const <Widget>[
              ListTile(title: Text('One')),
              ListTile(title: Text('Two')),
              ListTile(title: Text('Free')),
              ListTile(title: Text('Four'))
            ]),
        ExpansionTile(
            title: const Text('Sublist'),
            backgroundColor: Theme.of(context).accentColor.withOpacity(0.025),
            initiallyExpanded: false,
            children: const <Widget>[
              ListTile(title: Text('One')),
              ListTile(title: Text('Two')),
              ListTile(title: Text('Free')),
              ListTile(title: Text('Four'))
            ]),
      ]),
    );
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值