我正在嘗試創建一個自定義導航小部件。這本質上涉及一個 Map,其中關鍵是路線。一個是鍵被定義而不是值只是我想要一些額外資料的頁面,而不僅僅是一個頁面小部件。
對于每個地圖值,我都需要一個:
String pageType;
Dynamic altColor;
Widget pageContent
我已經能夠通過在地圖內放置一個子地圖來實作這一點,但這不允許我定義我想要的資料型別和鍵。
class UINav extends StatelessWidget {
UINav({required this.routes})
final Map<String, Map<String, dynamic>> routes;
...
基本上每個地圖元素都應該要求以上每一項,而不是對任何資料開放。
uj5u.com熱心網友回復:
嘗試這個:
class NavTarget {
NavTarget(
{required this.pageType,
required this.altColor,
required this.pageContent});
String pageType;
dynamic altColor;
Widget pageContent;
}
進而:
final Map<String, NavTarget> routes = {
'first': NavTarget(
pageType: 'pageType1',
altColor: 'altColor1',
pageContent: const Text('pageContent1')),
'second': NavTarget(
pageType: 'pageType2',
altColor: 'altColor2',
pageContent: const Text('pageContent2')),
};
print(routes['first']!.altColor);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/351831.html
