flutter

2020-01-22  本文已影响0人  小星星吃KFC

json命令 根目录

flutter packages pub run build_runner build
flutter packages pub run build_runner watch
 appBar: AppBar(
        title: Text(widget.title),# 导航栏标题
        elevation: 0.0,# 导航栏阴影
      ),

elevation 导航栏阴影
elevation: 0.0,


图片.png

elevation: 10,


图片.png

圆角 Container 只能是线宽圆角,内容不会被圆角

 /// Container 只能是线宽圆角,内容不会被圆角
                        Container(
                      decoration: BoxDecoration(
                        /// 圆角必须有线宽默认1
                        border: Border.all(
                            width: 12, color: Colors.deepPurpleAccent),

                        ///圆角
                        borderRadius: BorderRadius.circular(12.0),

                        /// 阴影 可以多个 offset 值 逆序,不然看不见
                        boxShadow: [
                          BoxShadow(
                            color: Colors.red,
                            offset: Offset(10.0, 10.0),
//                            blurRadius: 10.0,
//                            spreadRadius: 12.0,
                          ),
                          BoxShadow(
                            color: Colors.orange,
                            offset: Offset(5, 5),
//                            blurRadius: 10.0,
//                            spreadRadius: 12.0,
                          ),
                        ],
                      ),

                      /// 比例 widget
                      child: Image.network(
                        PostEntity.dataList()[index].imageUrl,
                        fit: BoxFit.cover,
                      ),
                    )
图片.png

ListView 多个自定义内容 和 ListView.builder 统一的cell

ListView(
        children: <Widget>[
          
        ],
      ),
ListView.builder(
///数量
        itemCount: this.dataList.length,
/// 单元格
        itemBuilder: (BuildContext context, int index) {

          return InkResponse( ),
          },
          );

icon 资源图片

icon: ImageIcon(AssetImage("name")),

异步

/// 模拟异步加载用户信息
  _getUserInfo() async {
    await Future.delayed(new Duration(seconds: 1));
    return "我是用户";
  }

   _getUserInfo3() async {
//    await new Future.delayed(new Duration(seconds: 1)).then((onValue) {
//      print("onValue = $onValue");
//      return "异步结果--2";
//    });

    return Future.delayed(Duration(milliseconds: 1000), () {
      return "异步结果--3";
    });

  }
  

  /// 异步 await 阻塞,比如等 内容输出后,才会输出2
  _loadUserInfo() async {
    print("_loadUserInfo--1:${new DateTime.now()}");
    print("内容 = ${await _getUserInfo3()}");
    print("_loadUserInfo--2:${new DateTime.now()}");
  }

  /// 异步,最后输出 异步内容
  _loadUserInfo2() {
    print("异步类型2--1:${new DateTime.now()}");
    _getUserInfo().then((onValue) {
      print(onValue);
    });
    print("异步类型2--2:${new DateTime.now()}");
  }

push pop 2种写法

  Navigator.of(context).push(MaterialPageRoute(builder: (context){
          return Text("aa");
        }));
        
        Navigator.pop(context,MaterialPageRoute(builder: (context){
          return Text("aa");
        }));
        
        Navigator.of(context).pop();
        Navigator.pop(context);

Wrap 代替 row 自动换行的
Divider 分割线

上一篇下一篇

猜你喜欢

热点阅读