我有一個主要活動。從此活動中,用戶可以導航到配置文件,並且在配置文件中用戶可以編輯設置當用戶更改設置時刷新片段
我想要的是:當用戶進行更改時,我想根據這些更改刷新主要活動中的片段。因爲我只能更新主活動在該活動再次出現時顯示的片段。那麼我怎麼能告訴主要活動數據已經改變並相應地更新UI。
所以我想知道什麼是處理這種情況的最佳方法。
我有一個主要活動。從此活動中,用戶可以導航到配置文件,並且在配置文件中用戶可以編輯設置當用戶更改設置時刷新片段
我想要的是:當用戶進行更改時,我想根據這些更改刷新主要活動中的片段。因爲我只能更新主活動在該活動再次出現時顯示的片段。那麼我怎麼能告訴主要活動數據已經改變並相應地更新UI。
所以我想知道什麼是處理這種情況的最佳方法。
考慮在Fragment
類中創建自定義BroadcastReceiver
,並且在設置的任何更改上發送Intent
自定義Action
。
好吧,但如果片段不可見,它將如何更新片段? – user2934930
@ user2934930使用'SupportFragmentManager'解決了替換片段的問題。 –
感謝那個工作的人 – user2934930
如果配置文件是一個活動,使用startActivityforResult
啓動它,並在onActivityResult
得到新的數據,如果片段實例不null
,調用一些方法說,在該片段update
。如果片段實例爲null,則使用新數據創建一個新實例。
如果配置文件是主要活動中的另一個片段,則將更改存儲在SharedPreferenceManager
中。在您的MainActivity
的簡歷FirstFragment
從SharedPreferenceManager
獲取數據。如果它不相同,重繪該片段,否則離開它。
https://developer.android.com/reference/android/content/BroadcastReceiver.html –
主要和配置文件是單個活動的片段嗎?或主要和配置文件是兩個不同的活動?請放一些java代碼,以便可以更好地理解它。 –