浅识Flutter 基本组件Scaffold的 drawer属性 app创建头像

浅识Flutter 基本组件Scaffold的 drawer属性 app创建头像

在项目开发中使用本地图片资源文件的步骤。

1、在项目下创建一个文件夹image
在这里插入图片描述

2、将本地图片放入images文件夹里
在这里插入图片描述
3、 在pubspec.yaml文件中声明本地图片资源文件,声明代码如下:

flutter:
	assets:
		- images/pman.png#-后面有1个空格

先找到flutter:
加入声明代码
在这里插入图片描述

点击 pub get 更新 无报错即可
在这里插入图片描述
在这里插入图片描述

onDetailsPressed:设置当accountName或accountEmail被点击的时所触发的回调函数

UserAccountsDrawerHeader(accountName: Text('阿大豆'),
              accountEmail:Text('443407618@qq.com') ,
                currentAccountPicture: CircleAvatar(backgroundImage:AssetImage('images/pman.png') ,
                ),
                onDetailsPressed: (){print('其实我是阿大豆');},
              ),

效果 :点击方框内区域 会打印出文本函数
在这里插入图片描述
设置 点击左上方菜单图标 就可打开侧边栏
在这里插入图片描述

在这里插入图片描述

//养心殿页面
class yangxdpage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    var select=0;
    return Scaffold(
      /*设置导航栏*/
      appBar: AppBar(
          title: Text('养心殿'),
          // leading: Icon(Icons.menu),
          leading:Builder(builder: (BuildContext context){
            return IconButton( icon: Icon(Icons.menu),onPressed: (){
              Scaffold.of(context).openDrawer();
            },);
          }),

          iconTheme: IconThemeData(color: Colors.red, opacity: 30, size: 25),
          actions: <Widget>[
            IconButton(
              icon: Icon(Icons.search, color: Colors.red),
              tooltip: "搜索",
              onPressed: () {
                print("找折子,,,");
              },
            ),
            IconButton(
                icon: Icon(Icons.add, color: Colors.blue),
                tooltip: "添加",
                onPressed: () {
                  print('上折子...');
                })
          ]),

      /*设置左侧侧边栏*/
        drawer:Drawer(
          child: ListView(
            children: <Widget>[
              UserAccountsDrawerHeader(accountName: Text('阿大豆'),
              accountEmail:Text('443407618@qq.com') ,
                currentAccountPicture: CircleAvatar(backgroundImage:AssetImage('images/pman.png') ,
                ),
                onDetailsPressed: (){print('其实我是阿大豆');},
              ),
              ListTile(leading: Icon(Icons.account_balance),title: Text("紫禁城"),subtitle:  Text('紫禁城的风水养人'),),
              ListTile(leading: Icon(Icons.account_box_rounded),title: Text("雍正"),subtitle:  Text('往事暗沉不可追,来日之路光明灿烂'),),
              ListTile(leading: Icon(Icons.accessibility_new),title: Text("皇后"),subtitle:  Text('臣妾做不到啊'),),
            ],
          ),
        ),

      /*设置底部导航栏*/
      bottomNavigationBar: BottomNavigationBar(
        items: <BottomNavigationBarItem>[
          BottomNavigationBarItem(
              icon: Icon(Icons.add_a_photo), title: Text('军机处')),
          BottomNavigationBarItem(
              icon: Icon(Icons.center_focus_strong), title: Text('血滴子')),
          BottomNavigationBarItem(
              icon: Icon(Icons.add_alarm_outlined), title: Text('大理寺'))
        ],
        /*设置单击事件*/
        onTap: (value){
          select=value;
          print(value);
        },
        currentIndex: select,

      ),
      backgroundColor: Colors.yellowAccent,

      body: Center(
        child: GestureDetector(
          onTap: () {
            print("皇上起驾");
            Navigator.pushNamed(context, "/hougong"); //连接到hougong路由  路由名hougong
          },
          child: Text("起驾后宫"),
        ),
      ), //GestureDetector手势检测组件
    );
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值