• Drawer 侧边栏、以及侧边栏内 容布局


    一、Flutter Drawer 侧边栏
    在 Scaffold 组件里面传入 drawer 参数可以定义左侧边栏,传入 endDrawer 可以定义右侧边栏。侧边栏默认是隐藏的,我们可以通过手指滑动显示侧边栏,也可以通过点击按钮显示侧边栏。
    return Scaffold(
      appBar: AppBar(
        title: Text("Flutter App"),
      ),
      drawer: Drawer(
        child: Text('左侧边栏'),
      ),
      endDrawer: Drawer(
        child: Text('右侧侧边栏'),
      ),
    );
     
    二、DrawerHeader
    常见属性:
    decoration  设置顶部背景颜色
    child  配置子元素
    padding  内边距
    margin  外边距 
     
    三、Flutter UserAccountsDrawerHeader
    decoration  设置顶部背景颜色
    accountName  账户名称
    accountEmail  账户邮箱
    currentAccountPicture  用户头像
    otherAccountsPictures  用来设置当前账户其他账户头像
    margin 
     
    四、Flutter 侧边栏路由跳转
    onTap: (){
       Navigator.of(context).pop();
       Navigator.pushNamed(context, '/search');
    }
     
    案例代码
    import 'package:flutter/material.dart';
    import '../home.dart';

    class My extends StatelessWidget{
    @override
    Widget build(BuildContext context) {
    // TODO: implement build
    return Scaffold(
    drawer: Drawer(
    child: Column(
    children: <Widget>[
    UserAccountsDrawerHeader(
    decoration: BoxDecoration(
    image:DecorationImage( image: NetworkImage("https://www.itying.com/images/flutter/2.png"), fit:BoxFit.cover )
    ),
    ),
    ListTile(title: Text('123'),leading: Icon(Icons.home), onTap: () {
    // Navigator.of(context).pop();
    // Navigator.pushNamed(context, '/search');
    Navigator.of(context).pushAndRemoveUntil(MaterialPageRoute(builder: (context) => Home(index: 1)), (route) => route == null);
    },),
    ListTile(title: Text('123'),leading: Icon(Icons.home), onTap: () {
    // Navigator.of(context).pop();
    // Navigator.pushNamed(context, '/search');
    Navigator.of(context).pushAndRemoveUntil(MaterialPageRoute(builder: (context) => Home(index: 2)), (route) => route == null);
    }),

    ],
    ),
    ),
    endDrawer: Drawer(
    child: Text('右侧'),
    ),
    );
    }
    }
  • 相关阅读:
    C# DictionaryHelper
    C# Autofac 的 BeanFactory
    正则替换
    java页面表格导出为Excel实现
    CentOS 7 下安装Nginx
    认识Java 虚拟机的架构
    06 查看网卡实时流量
    05 找出占用CPU、内存过高的进程
    04 一键查看服务器资源利用率
    03 批量创建100个用户并设置随机密码
  • 原文地址:https://www.cnblogs.com/zhaofeis/p/12342850.html
Copyright © 2020-2023  润新知