在運行 app 之前,我需要在 main.dart 檔案中運行 2 個函式。一個是底部導航欄,另一個是簡易本地化。
我的 main.dart 是:
void main() => runApp(
MyApp()
);
Future <void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await EasyLocalization.ensureInitialized();
runApp(
EasyLocalization(
supportedLocales: [Locale('en', 'US'), Locale('it', 'IT'), Locale('fr', 'FR')],
path: 'assets/translations', // <-- change the path of the translation files
fallbackLocale: Locale('en', 'US'),
assetLoader: CodegenLoader(),
child: MyLangApp(),
),
);
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context){
return new MaterialApp(
home: MyBottomNavBar(),
);
}
}
所以基本上,我不能void main在 main.dart 中有 2 個。我怎樣才能把這兩個功能放在一起?
uj5u.com熱心網友回復:
你的問題有兩個不同的部分,答案是不同的。
您正在使 main() 異步,并處理您的本地化。如果你想要更多的控制權,我們在本周的 HumpDayQandA 上討論了在渲染第一幀之前使用異步函式,并討論了如何根據需要擴展本機初始螢屏,以便完成你的函式。這是 FlutterCommunity YouTube 頻道 2022 年 6 月 29 日的一集。https://www.youtube.com/watch?v=9KFk4lypFD4
BottomAppBar 問題可能是您在這個問題上得到-1 的原因。那是因為這不是您使用 BottomAppBar 的方式。它放在腳手架上。如果您不想將 AppBar 放在頂部,那么只需將其排除在外。
但是您不想將 BottomNavBar 稱為 MaterialApp 的 home 引數。無論您在家中使用什么,都將成為您樹中的基本可見小部件,是所有其他小部件所構建的最低小部件。
您的整個應用程式是否適合該底部導航欄?然后你想把欄放在占據整個螢屏的其他東西里面,并提供一個基礎來構建你的應用程式的其余部分......就像一個腳手架。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/497933.html
上一篇:如何在Flutter/Dart的背景上正確定位另一個影像和按鈕?
下一篇:關閉鍵盤后文本欄位仍保持焦點?
