就我而言:我的listTemplates是相同的:
List<TemplateModel> listTemplate = [
TemplateModel(
id: 1,
name: 'Temp_1',
previewBack: AppImages.TEMP_1,
previewFront: AppImages.TEMP_1,),
TemplateModel(
id: 2,
name: 'Temp_2',
previewBack: AppImages.TEMP_2,
previewFront: AppImages.TEMP_2),
TemplateModel(
id: 3,
name: 'Temp_3',
previewBack: AppImages.TEMP_3,
previewFront: AppImages.TEMP_3),
TemplateModel(
id: 4,
name: 'Temp_4',
previewBack: AppImages.TEMP_4,
previewFront: AppImages.TEMP_4),
];
而且我還有Temp_1()、Temp_2()、Temp_3()、Temp_4()小部件。
我想按模板名稱顯示每個ex:
Container(
child: `Temp_1`(), // It's my explain to try to show my problem, of course, it's not work.
);
我不想在這種情況下使用if-else或switch-case,因為我有太大的串列模板。
謝謝您的回答!
uj5u.com熱心網友回復:
我認為現在不支持。您對這種情況使用正確的解決方案嗎?
uj5u.com熱心網友回復:
不,你不能。您可以使用的另一個選項 - Map<int, Widget>。
final temperatureUI = {
1: Temp_1(),
...
}
進而
Container(
child: temperatureUI[templateModel.id],
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/350626.html
上一篇:無法從顫振中的不同目錄匯入檔案
下一篇:身體可能會正常完成
