【发布时间】:2020-08-07 15:40:37
【问题描述】:
我正在开发一个示例应用程序来学习 Flutter。我想要的是在标题顶部显示一个图标。 Category 类负责构建这个小部件。
class Category extends StatelessWidget {
final String title;
final IconData icon;
Category({@required this.title, @required this.icon});
@override
Widget build(BuildContext context) {
return Center(
child: Container(
color: Colors.blue,
height: 100.0,
width: 200.0,
child: InkWell(
onTap: () {
print('$title was tapped!');
},
child: Padding(
padding: EdgeInsets.all(10),
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Icon(icon, color: Colors.white, size: 10,), // <===== My problem is here
Text(
this.title,
style: TextStyle(fontSize: 24),
)
],
)
),
),
),
);
}
}
我像这样创建这个小部件并将其传递给 ListView.builder。
var _categories = [
Category(title: "Test 1", icon: Icons.airline_seat_flat),
Category(title: "Test 2", icon: Icons.airline_seat_flat_angled),
Category(title: "Test 3", icon: Icons.airline_seat_individual_suite),
Category(title: "Test 4", icon: Icons.airline_seat_legroom_extra)
];
但是,如果我用这一行替换上面的行,那么我会看到图标。
Icon(Icons.star, color: Colors.white, size: 20,),
所以,我的问题是如何将图标从外部小部件传递到这个小部件?谢谢。
【问题讨论】:
-
尝试使用 Icons.star 传递 Category 项目,也许你实际上没有航空公司的项目
-
图标是可见的,即使你在列表视图中传递。
-
如何将图标数据传递给 ListView.builder 中的类别?你也可以导入它的代码吗?
标签: flutter