簡體   English   中英

如何在Android中保存片段狀態?

[英]How to save state of fragment in android?

我在一項活動中使用四個片段
底部的四個按鈕用於在片段之間切換
我有操作欄的搜索按鈕
但是,當我單擊搜索按鈕時,鍵盤出現,然后該片段再次開始加載。
那么如何在配置更改時保存片段狀態。.我也試過了

 android:configChanges="orientation|screenSize|keyboardHidden|keyboard" 

fragment中使用public void setRetainInstance (true)

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setRetainInstance(true);
        ...
        ...
    }

僅當方向發生變化時才保留,而不是在后堆棧上保留。

您可以使用setRetainInstance(true)。 無論您在哪里寫-在onActivityCreated或OnCreateView中。 但是在這種情況下,您將來可能會遇到內存問題或鏈接到舊的Activity。 對於我而言,我認為最好將數據保存在onSaveInstanceState中,並在onRestoreInstanceState中獲取它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM