【自学Flutter】18 TabBar、TabBarView、BottomAppBar 导航栏和浮动按钮的使用

本文通过一个实战示例详细介绍了Flutter中TabBar、TabBarView、BottomAppBar以及FloatingActionButton的使用,包括如何创建TabController,设置Tab菜单,以及与Scaffold组件的配合,展示了底部导航栏和浮动按钮的应用。
摘要由CSDN通过智能技术生成

return IconButton(

icon: Icon(Icons.dehaze,color: Colors.white,),

onPressed: (){

Scaffold.of(context).openDrawer();

},

);

}),

actions: [

IconButton(

icon:Icon(Icons.share),

color: Colors.white,

onPressed: (){},

),

],

bottom: TabBar(

tabs: list.map( (e)=> Tab(text: e) ).toList(),

controller: tabController,

),

),

drawer: MyDrawer(),

body: TabBarView(

controller: tabController,

children: list.map((e){

return Container(

alignment: Alignment.center,

child: Text(e),

);

}).toList(),

),

bottomNavigationBar: BottomAppBar(

color: Colors.orange,

shape: CircularNotchedRectangle(),

child: Row(

mainAxisAlignment: MainAxisAlignment.spaceAround,

children: [

IconButton(icon: Icon(Icons.group_work,color: Colors.white,), onPressed: (){}),

SizedBox(),

IconButton(icon: Icon(Icons.apps,color: Colors.white,), onPressed: (){})

],

),

),

floatingActionButton: IconButton(icon: Icon(Icons.add_circle,color: Colors.blue),iconSize: 60,padding: EdgeInsets.all(0), onPressed: (){}),

floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,

)

);

}

}

class MyDrawer extends StatelessWidget {

@override

Widget build(BuildContext context) {

return Drawer(

child: MediaQuery.removePadding(

context: context,

removeTop: true,

child: Column(

children: [

Container(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值