修改应用图标
flutter pub add flutter_launcher_icons
dart run flutter_launcher_icons:generate #在项目根目录中运行,生成默认配置模版flutter_launcher_icons.yaml
#修改其中的image_path,再运行
flutter pub get
dart run flutter_launcher_icons
修改版本号、应用名称、标题
版本号:
位于项目根目录下pubspec.yaml,version属性
1.0.0+1,1.0.0是版本号,+1是构建号
应用名称:
android/app/src/main/AndroidManifest.xml,修改android:label,默认为flutter的项目名
标题:
任务管理中的标题在MaterialApp根元素的title属性中设置,应用顶部标题由Scaffold元素的title控制
入口文件
lib/main.dart入口文件中的runApp的参数应为MaterialApp或CupertinoApp(ios风格)元素。每个页面的根组件应为Scaffold,顶栏、tabbar、浮动按纽都在其中定义。
//lib/main.dart
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
initialRoute: '/', //初始路由,
routes: {
'/': (BuildContext context) => const MyHomePage(title: 'Flutter Demo Home Page'), //初始路由名称必须是"/"
'/page1': (BuildContext context) => const Page1()
},
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({super.key});
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return const Scaffold();
}
}
class Page1 extends StatefulWidget {
const Page1({super.key});
@override
State<Page1> createState() => _Page1State();
}
class _Page1State extends State<Page1> {
@override
Widget build(BuildContext context) {
return const Scaffold();
}
}
MaterialApp、Scaffold的参数详解
MaterialApp如果有home元素,则routes中不要存在"/"路由,否则报错。home对应的页面路由名称为"/"
tab页面之间切换时会卸载之前的页面
通过push弹出新页面时旧的页面不会卸载