将屏幕分成两个相等的部分

将屏幕分成两个相等的部分,第1张

屏幕分成两个相等的部分

您可以使用- 获得屏幕的大小,然后将其除以2得到前一半。

MediaQuery

@override  Widget build(BuildContext context) {    return MaterialApp(        title: title,//        theme: ThemeData.light().copyWith(//          platform: _platform ?? Theme.of(context).platform,//        ),        home: DefaultTabController( length: 3, child: Scaffold(//     appBar: AppBar(//       title: Text(title),//     ),     body: SafeArea(         child: Column(children: <Widget>[       Container(         color: Colors.greenAccent,         height: MediaQuery.of(context).size.height / 2.2,  // Also Including Tab-bar height.//  child: Chewie(//    controller: _chewieController,//  ),       ),       PreferredSize(         preferredSize: Size.fromHeight(50.0),         child: TabBar(labelColor: Colors.black,tabs: [  Tab(    text: 'One',  ),  Tab(    text: 'Two',  ),  Tab(    text: 'Three',  )], // list of tabs         ),       ),       //TabBarView(children: [ImageList(),])       Expanded(         child: TabBarView(children: [  Container(    color: Colors.deepOrange,    child: Center(child: Text('Tab1')),  ),  Container(    color: Colors.red,    child: Center(child: Text('Tab2')),  ),  Container(    color: Colors.yellowAccent,    child: Center(child: Text('Tab3')),  ) // class name],         ),       ),     ])))));  }

Output:

with AppBar -

height: MediaQuery.of(context).size.height / 2.5,

with

GridView.builder
in -
TabBarView

Expanded(         child: TabBarView(children: [  GridView.builder(    itemBuilder: (context, int) {      return CircleAvatar(        backgroundImage: NetworkImage( 'https://placeimg.com/640/480/any'),      );    },    itemCount: 20,    gridDelegate:        SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 3),    shrinkWrap: true,  ),  Container(    color: Colors.red,    child: Center(child: Text('Tab2')),  ),  Container(    color: Colors.yellowAccent,    child: Center(child: Text('Tab3')),  ) // class name],         ),       ),

to fetch async data - use -

FutureBuilder

    @override  Widget build(BuildContext context) {    return FutureBuilder(      builder: (context,snap){        if(snap.hasData){          return Expanded( child: GridView.count(   shrinkWrap: true,   childAspectRatio: 2,   scrollDirection: Axis.vertical,   crossAxisCount: 2,   children: new List<Widget>.generate(images.length, (index) {     return buildImage(images[index], context, index);   },   ).toList(), ),          );        }        return Center(child: CircularProgressIndicator())      },      future: fetchSubCategoryContentlist(context, 20),    );


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5175606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存