亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在使用FragmentTransaction來切換的時候,按Home鍵,Fragment生命周期的變化

在使用FragmentTransaction來切換的時候,按Home鍵,Fragment生命周期的變化

China豐 2017-06-27 14:33:17
如果使用了FragmentTransaction.add 和 show 來切換導航欄的話,在Fragment1 和Fragment2 來回切換的時候,Fragment的生命周期不會發生變化。但是如果按Home鍵返回桌面的時候,里面所有已經打開的Fragment都會被銷毀。從桌面返回應用里面的時候,就會重新執行Fragment的創建。如果Fragment里面是一個ListView的話,就會重新去網絡獲取數據了。請問下,應該如果避免 這個 重新創建這個Fragment問題呢
查看完整描述

1 回答

?
為夢想努力_冬

TA貢獻56條經驗 獲得超14個贊

可以使用viewPager把Fragment包含進去,然后使用vp.setOffscreenPageLimit(fragmentList.size() - 1);方法,這樣fragmnet在點擊home鍵的時候會onstop()但不會ondestory()了。

查看完整回答
反對 回復 2017-06-27
  • China豐
    China豐
    ViewPager是可以滑動的,我想實現的是不能滑動,只靠點擊底部的導航欄來實現切換。 vp.setOffscreenPageLimit(fragmentList.size() - 1); 這段代碼會實現所有的Fragment都去預加載的。這個是不友好的。應該切換到哪個Fragment再去加載哪個的,重新切換的時候,不能重新去加載layout
  • 為夢想努力_冬
    為夢想努力_冬
    禁止滑動只要重寫ViewPager的touch事件就好了 @Override public boolean onTouchEvent(MotionEvent arg0) { return false; } @Override public boolean onInterceptTouchEvent(MotionEvent arg0) { return false; } 至于你又想Fragment重新加載,又不想他重新加載,我不知道是為什么,可能你有特殊的需求吧,我都沒太懂你的Fragment要實現什么
  • 1 回答
  • 0 關注
  • 1564 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號