flutter AutomaticKeepAliveClientMixin不起作用?
參考 https://www.colabug.com/3162835.html
https://stackoverflow.com/questions/53011686/flutter-automatickeepaliveclientmixin-is-not-working-with-bottomnavigationbar62835.html
Flutter切換tab後保留tab狀態 概述 Flutter中為了節約記憶體不會儲存widget的狀態,widget都是臨時變數。當我們使用TabBar,TabBarView是我們就會發現,切換tab,initState又會被呼叫一次。
怎麼為了讓tab一直儲存在記憶體中,不被銷燬?
新增AutomaticKeepAliveClientMixin
,並設定為true,這樣就能一直保持當前不被initState了。
class TicketListViewState extends State<TicketListView>
with AutomaticKeepAliveClientMixin {
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
super.build(context);
return new SmartRefresher(
enablePullDown: true,
enablePullUp: true,
onRefresh: _onRefresh,
controller: refreshController,
child: ListView.builder(
itemCount: _result.length,
itemBuilder: (context, index) {
return getItem(_result[index]);
},
));
}
//不會被銷燬,佔記憶體中
@override
bool get wantKeepAlive => true;
}
如果不起作用
@override
Widget build(BuildContext context) {
super.build(context);//必須新增
.....
));
官方解釋
/// A mixin with convenience methods for clients of [AutomaticKeepAlive]. Used
/// with [State] subclasses.
///
/// Subclasses must implement [wantKeepAlive], and their [build] methods must
/// call `super.build` (the return value will always return null, and should be
/// ignored).
相關文章
- .gitignore 不起作用Git
- MySQL kill會話不起作用?MySql會話
- 透過innerHTML vue不起作用HTMLVue
- Flutter 特定頁面切換螢幕方向/iOS強制橫屏/SystemChrome.setPreferredOrientations不起作用 看這裡!FlutteriOSChrome
- goland 匿名匯入包不起作用GoLand
- 程式碼更新後不起作用原因
- 設定跟蹤事件不起作用。事件
- 外掛移植後,鉤子不起作用。
- Android webview “location.replace” 不起作用AndroidWebView
- 為什麼margin-top不起作用
- nologging 不起作用!【解決】
- Spring Security配置好了不起作用Spring
- OpenWrt 多撥負載均衡不起作用負載
- QTableWidget設定行高不起作用QT
- vue中修改Element ui樣式不起作用VueUI
- HTML中div巢狀div的margin不起作用HTML巢狀
- 用onethink快取方式改成memcache不起作用快取
- vue專案 設定scrollTop不起作用 總結Vue
- node app.js不起作用的解決方法APPJS
- DNNmodule.css檔案不起作用的解決DNNCSS
- Azure Function host.json 設定不起作用FunctionJSON
- [Flutter翻譯]Flutter without FlutterFlutter
- element-ui中使用@mouseenter、@mouseleave等不起作用UI
- Reset按鈕在回發之後就不起作用
- Mac檔案共享不起作用時該怎麼辦Mac
- Oracle8.1.7.0 LOG_ARCHIVE_MIN_SUCCEED_DEST 不起作用 ?OracleHive
- 當模型不起作用的時候應該怎麼做?模型
- Angular中innerHTML標籤的樣式不起作用詳解AngularHTML
- 解決Mac檔案共享出錯、不起作用的方法Mac
- Jtti:oracle強制索引不起作用怎麼解決JttiOracle索引
- React Native commond+r 不起作用 無響應React Native
- css為什麼設定div的寬度不起作用CSS
- react中內聯樣式的z-index不起作用.ReactIndex
- div z-index無論設定多高都不起作用Index
- SpringBoot2.7.18攔截器失效不起作用Spring Boot
- QT新增樣式表QSS/CSS檔案後不起作用QTCSS
- Unity3d 切片不起作用的解決辦法!Unity3D
- Linux定時任務Crontab不起作用的排查步驟Linux