如何将类转换为list.builder中的listview

问题描述 投票:0回答:1

我正在使用一个名为Icapp_license for flutter会创建一个文件,其中包含您使用的插件的所有许可证,因此输出是此文件,我想转换为listview

已生成在此处归档link

flutter-layout flutter-test flutter-plugin flutter-listview flutter-widget
1个回答
0
投票
您可以在下面复制粘贴运行完整代码执行命令flutter packages pub run icapps_licenselicense.dart将在目录util中自动生成您可以import './util/license.dart';

代码段

ListView.builder( itemCount: LicenseUtil.getLicenses().length, itemBuilder: (BuildContext context, int index) { final item = LicenseUtil.getLicenses()[index];

工作演示

enter image description here

完整代码

import 'package:flutter/material.dart'; import './util/license.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Demo', theme: ThemeData( primarySwatch: Colors.blue, ), home: MyHomePage(title: 'Flutter Demo Home Page'), ); } } class MyHomePage extends StatefulWidget { MyHomePage({Key key, this.title}) : super(key: key); final String title; @override _MyHomePageState createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { int _counter = 0; void _incrementCounter() { setState(() { _counter++; }); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text(widget.title), ), body: Center( child: ListView.builder( itemCount: LicenseUtil.getLicenses().length, itemBuilder: (BuildContext context, int index) { final item = LicenseUtil.getLicenses()[index]; return Padding( padding: const EdgeInsets.all(8.0), child: Container( color: Colors.grey.withOpacity(0.5), child: Column( children: [ Text(item.name), Text(item.version), Text(item.url), Container(height: 8), Text(item.license), ], ), ), ); }, ), ), floatingActionButton: FloatingActionButton( onPressed: _incrementCounter, tooltip: 'Increment', child: Icon(Icons.add), ), ); } }

© www.soinside.com 2019 - 2024. All rights reserved.