【发布时间】:2019-12-10 10:26:15
【问题描述】:
我在 main.dart 中定义了 Method 和 Widget 部分,我的代码工作正常,
我创建了新文件 method.dart 并使用了该文件中的所有方法并在我的主文件中导入了方法并且它工作正常,
但我的问题是如何从 main.dart 中的另一个文件调用 Widget 部分。
main.dart:
如何从另一个文件中调用以下小部件:
Widget buttonSection = Container(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
_buildButtonColumn(color, Icons.call, 'CALL'),
_buildButtonColumn(color, Icons.near_me, 'ROUTE'),
_buildButtonColumn(color, Icons.share, 'SHARE'),
],
),
);
可以从另一个文件调用以下方法:
Column _buildButtonColumn(Color color, IconData icon, String label) {
return Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
children: [
Icon(icon, color: color),
Container(
margin: const EdgeInsets.only(top: 8),
child: Text(
label,
style: TextStyle(
fontSize: 12,
fontWeight: FontWeight.w400,
color: color,
),
),
),
],
);
}
在材质函数中使用:
return MaterialApp(
title: 'Flutter layout demo',
home: Scaffold(
appBar: AppBar(
title: Text('Flutter layout demo'),
),
body: ListView(
children: [
Image.asset(
'images/lake.jpg',
width: 600,
height: 240,
fit: BoxFit.cover,
),
buttonSection,
],
),
),
);
【问题讨论】:
-
我听不懂。你能分享所有带有正确描述的代码吗?
-
如何在 main.dart 中使用 file1.dart 的小部件
-
您可以使用文件中的类和对象来调用它们。
-
如果可以,请举一个简单的例子。