持續(xù)更新蹦狂。誓篱。
1 添加依賴后運行提示 MissingPluginException(No implementation found for method * on channel *)
- 確認運行過
Packages get
- 執(zhí)行
flutter clean
(相當于刪除build文件夾
); - 點擊
Stop
關(guān)閉應用 - 點擊
Run
運行應用
2 AutomaticKeepAliveClientMixin
Keep不到問題
在多tab
+tabView
界面,來回切換時候會報錯,這里有詳細說明,不知道dart最新版本修復了沒朋贬,有大佬提供的解決方案是用Tabbar + PageView
解決窜骄,并且提供了demo,可以從上面鏈接中查看,但是在使用過程中還是會重繪最后找到是因為少了一句代碼,在需要keep的widget
的build
下添加super.build(context);
@override
Widget build(BuildContext context) {
super.build(context);
也就是keep的詳細步驟是
- 使用
TabBar
+PageView
使用方法 - 子頁在
extends State
后還要with AutomaticKeepAliveClientMixin<T>
- 子頁的
build
方法下添加super.build(context);
在一切都添加完成后,發(fā)現(xiàn)還是會一直調(diào)用initState()
以為沒起到作用锦募,后來發(fā)現(xiàn)雖然調(diào)用了initState()
方法,也重新調(diào)用了build()
方法邻遏,但是界面不會發(fā)生改變糠亩,除去效率不說總算是實現(xiàn)了效果,希望后期有更好的解決辦法准验,這里還去下載了GarGuo的GitHubFlutterApp源碼去打印log發(fā)現(xiàn)在切換tab時同樣會重新調(diào)用initState
以及build
赎线。
3 SingleChildScrollView
里面嵌套Column
和ListView
時候,ListView
不顯示或者滑動沖突
- 禁用
ListView
的滑動
physics: NeverScrollableScrollPhysics() (不加的話會導致當觸點在listview時候滑動無效果)
2.設置ListView
屬性 shrinkWrap: true
child 高度會適配 item填充的內(nèi)容的高度,我們非常的不希望child的高度固定,因為這樣的話糊饱,如果里面的內(nèi)容超出就會造成布局的溢出垂寥。
shrinkWrap多用于嵌套listView中 內(nèi)容大小不確定 比如 垂直布局中 先后放入文字 listView (需要Expend包裹否則無法顯示無窮大高度 但是需要確定listview高度 shrinkWrap使用內(nèi)容適配不會有這樣的影響)原文
4 項目報錯
lib/main.dart:1: Warning: Interpreting this as package URI, 'package:flutter_app/main.dart'.
file:///E:/flutter/packages/flutter/lib/src/material/animated_icons.dart:9:8: Error: Not found: 'dart:ui'
import 'dart:ui' as ui show Paint, Path, Canvas;
這里有2個main.dart
可能你選擇錯了。另锋。滞项。應該選擇箭頭指向那個來運行
image.png