我的第一个flutter项目

直接上代码

import 'package:flutter/material.dart';

class Product{
  final String title;// 商品标题
  final String description; // 商品描述
  Product(this.title,this.description);
}

void main(){
  runApp(MaterialApp(
    title: '导航的数据传递和接受',
    home: ProductList(
      products:List.generate(
        20,
        (i)=>Product('商品 $i', '这是一个商品详情,编号为$i')
        )
    ),
  ));
}
class ProductList extends StatelessWidget {

  final List<Product> products;
  ProductList({Key key,@required this.products}):super(key:key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('商品列表'),),
      body: ListView.builder(
        itemCount: products.length,
        itemBuilder: (context,index){
          return ListTile(
            title: Text(products[index].title),
            onTap: (){
              Navigator.push(
                context, 
                MaterialPageRoute(
                  builder: (context)=>ProductDetail(product:products[index])
                )
              );
            },
          );
        },
      ),
    );
  }
}

class ProductDetail extends StatelessWidget {

  final Product product;
  ProductDetail({Key key,@required this.product}):super(key:key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('${product.title}'),),
      body: Center(child: Text('${product.description}'),),
    );
  }
}

效果图

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 16,509评论 4 61
  • 命令行中运行ipython locate profile default 找到配置文件目录 切到.jupyte目录...
    SlippyJerry阅读 13,076评论 0 1
  • 第五章通宵自习室 每次一想到考试,我总会感觉无穷无尽的烦躁,刚到期中,我就已经开始压抑自己。我丝毫没有兴趣去挣个什...
    林嘉瑞阅读 414评论 2 5
  • 登录页折腾了3小时,对于一个开发来说整一个看的过去的登录页真不容易
    小兵王者阅读 194评论 0 1
  • 选择美丽自造的理由 A、成本低廉:和各大品牌的护肤品相比,自己动手来做化妆品,免除了研发费用、宣传广告费用、商场柜...
    afcc805191e2阅读 394评论 0 0

友情链接更多精彩内容