0
我有一個擴展TableLayout的類來設置我的tableview,但是在該頁面本身,我想獲得我的SharedPreferences,但是在TableLayout中除了Activity以外沒有這樣的getSharedPreferences()方法。有沒有解決方法?在TableLayout類中獲取首選項
我有一個擴展TableLayout的類來設置我的tableview,但是在該頁面本身,我想獲得我的SharedPreferences,但是在TableLayout中除了Activity以外沒有這樣的getSharedPreferences()方法。有沒有解決方法?在TableLayout類中獲取首選項
getSharedPreferences
不屬於Activity
,而是Context
,並且Android中的每個小部件都需要對Context的引用。所以,如果你擴展TableLayout,你在構造函數中傳遞給你的新類一個Context,不是嗎?你可以從那裏訪問getSharedPreferenreces,不是嗎?
另一方面,從自定義小部件訪問getSharedPreferences
看起來像是一個非常糟糕的設計。不要這樣做。通過其構造函數將您需要的共享偏好的信息傳遞給您的小部件。