flutter-流式布局

Posted lxz-blogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flutter-流式布局相关的知识,希望对你有一定的参考价值。

import ‘package:flutter/material.dart‘;

class WrapDemo extends StatefulWidget {
  @override
  _WrapDemoState createState() => _WrapDemoState();
}

class _WrapDemoState extends State<WrapDemo> {
  List<Widget> list;

  @override
  void initState() {
    list = List<Widget>()..add(buildAddButton());
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    //屏幕的宽度
    final width=MediaQuery.of(context).size.width;
    //屏幕的高度
    final height = MediaQuery.of(context).size.height;
    return Container(
      child: Scaffold(
        appBar: AppBar(title: Text(‘wrap‘),),
        body: Center(
          child: Opacity(
            opacity: 0.8,
            child: Container(
              width: width,
              height: height / 2,
              color: Colors.grey,
              child: Wrap(
                children: list,
                spacing: 26.0,//间距
              ),
            ),
          ),
        ),
      ),
    );
  }

  Widget buildAddButton(){
    return GestureDetector( //手势识别
      onTap: (){
        if(list.length<9){
          setState(() {
            list.insert(list.length-1, buildPhoto());
          });
          

        }
      },
      child: Padding(
        padding: const EdgeInsets.all(8.0),
        child: Container(
          width: 80.0,
          height: 80.0,
          color: Colors.black54,
          child: Icon(Icons.add),
        ),
      ),
    );
  }

Widget buildPhoto(){
  return Padding(
    padding: const EdgeInsets.all(8.0),
    child: Container(
      width: 80.0,
      height: 80.0,
      color: Colors.amber,
      child: Center(
        child: Text(‘照片‘),
      ),
    ),
  );
}

}

 技术图片

 

以上是关于flutter-流式布局的主要内容,如果未能解决你的问题,请参考以下文章

flutter中流式布局

Flutter 布局类组件:流式布局(Wrap和Flow)

flutter-流式布局

Flutter 布局备忘录

warp 流式布局

Flutter 布局- FlowTableWrap详解