我正试图在单击BottomNavigationBarItem按钮时显示警报对话框,在CupertinoTabBar中,但上面写着没有找到材料本地化。
调试控制台
这个小部件的祖先是:
CupertinoApp
state: _CupertinoAppState#730fe
MyApp
state: MyAppState#064cb
代码
return CupertinoTabScaffold(
tabBar: CupertinoTabBar(
items: [
BottomNavigationBarItem(
label: "",
icon: Padding(
padding: const EdgeInsets.only(left: 10, top: 10),
child: Align(
alignment: Alignment.bottomLeft,
child: Icon(Icons.create_new_folder),
),
),
),
BottomNavigationBarItem(
label: "",
icon: Padding(
padding: const EdgeInsets.only(right: 10, top: 10),
child: Align(
alignment: Alignment.bottomRight,
child: Icon(Icons.folder_open),
),
),
)
],
currentIndex: state,
onTap: (int index) {
setState(() {
state = index;
});
if (index == 0) {
showDialog(
context: context,
builder: (BuildContext context) => CupertinoAlertDialog(
actions: [
Text("Bye"),
],
title: Text("New Folder"),
content: Text("Folder name"),
),
);
}
},
),
您是否将您的代表直接传递给CupertinoApp的本地化代表?请尝试这个:
CupertinoApp(
....
....
localizationsDelegates: [
DefaultMaterialLocalizations.delegate,
DefaultCupertinoLocalizations.delegate,
DefaultWidgetsLocalizations.delegate,
],
....
....
),
您可以尝试在主页上用MaterialApp
包装整个项目。