1.路由管理
有兩種方式,一種是直接調用路由頁,相當於顯式調用;
//導航到新路由
Navigator.push(context, MaterialPageRoute(builder: (context) {
return NewRoute(text: "我是A頁面的值",);
一種是在APP裏面先進行註冊,
routes: {
"new_page":((context)=> NewRoute())
},
2.包管理
根目錄的 pubspec.yaml文件就是來管理第三方依賴包的。
示例如下
name: flutter_in_action //應用或者包名稱
description: First Flutter application. //應用的包描述、簡介
version: 1.0.0+1 //應用或者包的版本號
dependencies: //應用或包依賴的其他包或者插件
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
dev_dependencies: //開發環境依賴的工具包(而不是flutter應用本身依賴的包)
flutter_test:
sdk: flutter
flutter: //flutter相關的配置選項。
uses-material-design: true
3.加載圖片資源
- 要新建文件目錄與pubspec.yaml同級,比如my_icons,裏面要設置3.0x 2.0x的目錄,不設置的話系統會自動根據分辨率拉伸圖片,設置3.0x,2.0x就會從相應文件目錄中找
pubspec.yaml
my_icons
my_icons/all.png
my_icons/2.0x/all.png
my_icons/3.0x/all.png
- 在pubspec.yaml中配置資源路徑,這個一定要看清是在flutter:下面一行 要有兩個縮進,如下
只用設置一個就可以
flutter:
# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true
assets:
- my_icons/all.png
- 在.dart中加載本地圖片,以下兩種加載方式
省略代碼...........
child: Column(
children: <Widget>[
FlatButton(
child: Text("This is new route"),
onPressed: () {
Navigator.push(context, MaterialPageRoute(builder: (context) {
print("結束當前頁面!");
}));
},
),
new Image.asset('my_icons/all.png'),
new Image(
image: new AssetImage('my_icons/all.png'),
)
],
)),
省略代碼..............
4.Widget
Widget只是UI元素的一個配置元素,並且一個Widget可以對應多個Element