日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Fragment崩溃后重启

發布時間:2025/5/22 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Fragment崩溃后重启 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

問題:Fragment崩潰后重啟,會重新渲染一遍UI,導致出現兩層UI。
原因:這是由于崩潰時Android系統自動存儲了一些信息,重啟后Fragment初始化了兩遍(onCreateView) UI導致的 。 解決方法:
1.給每一個Fragment設置一個不是透明的背景,這樣可以把下面那一層UI遮住了。不過這種方法不推薦。
2.在Activity的基類里面,判斷savedInstanceState是否為空,是的話,就不要再初始化UI了。示例代碼如下:

@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(getActivityContentId());//savedInstanceState是否為空,是空的話才初始化UIif (savedInstanceState == null) {initView();}}

其實在這種情況下,是重啟前的fragment實例沒有銷毀,可以通過給fragment設置tag,然后通過tag找回相應的fragment,判斷該fragment是否為null,來決定是否重新初始化fragment。通過FragmentManager來管理,比如getFragmentManager().findFragmentByTag("tag");

轉載于:https://my.oschina.net/u/2606060/blog/810312

總結

以上是生活随笔為你收集整理的Fragment崩溃后重启的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。