我在Android 4.0上有一個應用程序。它使用PreferenceManager類來 - 除其他外 - 讓用戶指定要顯示的數字的小數位數。在Android中的存儲類中訪問應用程序上下文
mPreferences = PreferenceManager.getDefaultSharedPreferences(this);
通常我沒有問題獲取應用程序上下文才能訪問偏好管理器。我的問題是我有一個類(讓我們稱之爲Record),它不具有任何具有app上下文的子類;它只是一個存儲類,但它確實有一個「NumDecPlaces」字段。現在,當我從我的應用程序中實例化類時,我只傳入用戶的#dec場所首選項。如果Record可以直接訪問Preference manager,那將會很好。我想我總是可以使用指向創建它的上下文的指針來實例化Record,但是這要記住很多;-)
所以現在記錄子類什麼都沒有。關於我能做些什麼來讓它看到應用上下文的建議?
謝謝!
Yah,這是我對這個問題的第一反應。正如我所提到的,我只是想避免必須「記住」用上下文來實例化。然而,這並不是什麼大不了的事情,而且它在Android開發中的其他地方几乎都會發生,所以我不知道爲什麼我會退縮。 – Chris
是的,你需要在你的構造函數中傳遞'Context'對象或'SharedPrefrences'對象。 – Apoorv
...我真的很抱怨額外的工作。 Eclipse非常善於提醒我。 – Chris