[英]Different One-time screens
我想知道一次性屏幕。 我需要在應用程序上使用一些一次性屏幕。
首先:
一次性屏幕,該屏幕可以保存3個選項中的用戶選擇(我使用圖像按鈕),然后讓他走得更遠,但是下一次用戶進入此活動時,它將打開用戶先前選擇的選項的活動。
我知道我需要使用SharedPrefences之類的代碼並將其保存到SD卡/應用程序內存中。
是的,您應該考慮一個簡單的狀態機設計。
假設您創建了一個Enum
ERuntimeState
,它具有兩個組件;
enum ERuntimeState { INITIALIZE, BEEN_INITIALIZED; }
如果需要提醒,可以在此處查看使用SharedPreferences
保存數據的有用示例。 使用SharedPreferences
,您可以查詢應用程序的現有存儲標志,並且如果之前未設置變量,則可以設置其默認值。 因此,在應用程序首次運行時,可以使用SharedPreferences
來檢查ERuntimeState
的已保存實例, ERuntimeState
使用INITIALIZE
作為默認值,如果不存在現有保存數據,則將使用該默認值。
完成此操作后,您可以使用獲取的ERuntimeState
來配置要在屏幕上加載的內容。 在這里您可以顯示您的首次啟動界面。 我們必須確保一旦輸入此狀態,就可以使用共享首選項保存ERuntimeState
值BEEN_INITIALIZED
,這樣就不必在下次運行時再次執行初始化步驟。
當然,通過定義此enum
,我們不僅限於兩個狀態。 否則,我們將只使用布爾值,這是不靈活的。
順便說一句,這可能很難調試! 您可能要確保在調試時不要將標志保存在初始化狀態,否則,您將不得不清除所有應用程序的緩存數據,以模擬初始啟動。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.