首页 > 其他 > 详细

Flutter——ListView组件(列表组件)

时间:2019-12-05 16:17:56      阅读:106      评论:0      收藏:0      [点我收藏+]

ListView的常见参数:

名称 类型 说明
scrollDirection
Axis
Axis.horizontal 水平列表
Axis.vertical 垂直列表
padding
EdgeInsetsGeometry
内边距
resolve
bool
组件反向排序
children
List<Widget>
列表元素

 

  • 垂直列表

技术分享图片

import ‘package:flutter/material.dart‘;

void main() {
  runApp(MaterialApp(
    title: "ListWidget",
    home: MyApp(),
  ));
}


class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: ListView(
          children: <Widget>[
            ListTile(
              leading: Icon(Icons.directions_car),
              title: Text("标题"),
              subtitle: Text("内容"),
              trailing: Icon(Icons.airplanemode_active),
            ),
            ListTile(
              leading: Icon(Icons.directions_car),
              title: Text("标题"),
              subtitle: Text("内容"),
              trailing: Icon(Icons.airplanemode_active),
            ),
            ListTile(
              leading: Icon(Icons.directions_car),
              title: Text("标题"),
              subtitle: Text("内容"),
              trailing: Icon(Icons.airplanemode_active),
            ),
          ],
        ),
    );
  }
}

 

  • 水平列表

技术分享图片

 

 

import ‘package:flutter/material.dart‘;

void main() {
  runApp(MaterialApp(
    title: "ListWidget",
    home: MyApp(),
  ));
}


class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: ListView(
          scrollDirection: Axis.horizontal,
          children: <Widget>[
            Container(
              color: Colors.pink,
              width: 100.0,
              height: 100.0,
            ),
            Container(
              color: Colors.yellow,
              width: 100.0,
              height: 100.0,
            ),
            Container(
              color: Colors.blue,
              width: 100.0,
              height: 100.0,
            ),
            Container(
              color: Colors.green,
              width: 100.0,
              height: 100.0,
            ),
            Container(
              color: Colors.orange,
              width: 100.0,
              height: 100.0,
            ),
          ],
        ),
    );
  }
}

注意:如果是垂直列表,LIstView里面的widget设置的width属性失效。

   如果是水平列表,ListView里面的widget设置的height属性失效。

 

  • 动态列表

 

import ‘package:flutter/material.dart‘;

void main() {
  runApp(MaterialApp(
    title: "ListWidget",
    home: MyApp(),
  ));
}


class MyApp extends StatelessWidget {
  List list = new List();
  MyApp() {
    for(var i = 0; i < 15; i++) {
      this.list.add("我是第$i条数据");
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: ListView.builder(
          itemCount: this.list.length,
          itemBuilder: (context,index) {
            return ListTile(
              leading: Icon(Icons.palette),
              title: Text("${this.list[index]}"),
            );
          }
        ),
    );
  }
}

 

 

 

 

Flutter——ListView组件(列表组件)

原文:https://www.cnblogs.com/chichung/p/11989169.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!