【Flutter】viewList 实现

image.png

依赖

import 'package:flutter/material.dart';
import 'package:english_words/english_words.dart';

创建 StatelessWidget 并且加载到runApp

void main() => runApp(new MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return new MaterialApp(
        title: 'ysfhj',
        home: new RandomWords()
    );
  }
}

创建动态 StatefulWidget

class RandomWords extends StatefulWidget{
  @override
  createState() =>new RandomColorState();
}
class RandomColorState extends State<RandomWords>{
  final _lists =<WordPair>[];
  final _biggerFont =const TextStyle(fontSize: 18.0);
  @override
  Widget build(BuildContext context) {
//    final wordPair = new WordPair.random();
//    return new Text(wordPair.asPascalCase);
  return new Scaffold(
    appBar: new AppBar(
      title: new Text('iam header'),
    ),
    body: _buildLists(),
  );
  }

  Widget _buildRow(WordPair pair){
    return new ListTile(
      title: new Text(
        pair.asPascalCase,
        style: _biggerFont,
      ),
    );
  }
  Widget _buildLists() {
    return new ListView.builder(
      padding: const EdgeInsets.all(16.0),
      itemBuilder: (context, i) {
        if (i.isOdd) return new Divider();
        final index = i ~/ 2;
        if (index >= _lists.length) {
          _lists.addAll(generateWordPairs().take(10));
        }
        return _buildRow(_lists[index]);
      },
    );
  }
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,281评论 19 139
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,174评论 1 32
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,731评论 25 709
  • 暑假看完数理化通俗演义后,我对数学,物理和化学这三门科目完全改变了看法,要知道,这三门科目是多么的无趣,枯燥,...
    只影向谁去505阅读 5,584评论 0 1
  • 比如认识一个人很容易,看懂他却很难, 是需要用点滴去感悟, 关键在于是别人想让你看到什么, 你的能力又能让你自己看...
    沈姐说说阅读 227评论 3 5