我的应用程序中有20个输入字段。定义TextFormField
小部件的最佳方式是什么?
例如:
Column(
children: [
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
_buildCariUnvanTextField(unvanController),
],
),
我应该有20种不同的方法吗?这是正确的定义方式吗?或者我该怎么办?有人能解释一下吗?
不应该有20种不同的方法。您应该像这样使用ListView.builder
代码:
ListView.builder(
itemCount: 20,
itemBuilder: (context, index) {
return _buildCariUnvanTextField(unvanController);
},
),
如果小部件不同,我认为唯一的方法是使用20种不同的方法。
完全避免使用helper方法,而是定义和使用自己定义的类/小部件。
供参考:
https://youtu.be/IOyq-eTRhvo
另一个SO问题已经得到了回答:
创建可重用小部件的函数和类之间有什么区别?