2013-04-30 23 views
1

我在我的活動設置中有一個lispreference,它由類似於對話視圖的默認樣式顯示。如何將列表首選項顯示爲常規活動?

相反,我希望它顯示像一個活動中的一項正常的ListView:(這樣的形象:http://cdn4.staztic.com/cdn/screenshot/meteogram-weather-847838-0.jpg

我爲實現這種思考方式有兩種:

  1. 擴展偏好並調用擴展偏好設置的setIntent()方法,然後啓動一個包含listview的活動並將選定的選項存儲在SharedPrefs中。

  2. 定製ListPreference的appearence,並使它看起來像一個普通的行爲,但我怎麼沒發現這是可以做到

對此有何想法,將不勝感激

-

Amine

回答

0

我終於做到了使用下面的XML(R.xml.prefs_location):

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > 
    <Preference 
     android:key="someKey" 
     android:summary="Some text" 
     android:title="Location" 
     />   
</PreferenceScreen> 

而且在PreferenceFragment類我已經設置了一個意向來打開所需的活性當偏好點擊:

Public class FragLocationPref extends PreferenceFragment { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     addPreferencesFromResource(R.xml.prefs_location); 
     Intent i = new Intent(this.getActivity().getBaseContext(), LocationChooseActivity.class); 
     findPreference("someKey").setIntent(i); 
    } 
} 
0

我有很多麻煩,我終於放棄了。通過擴展holo.light主題與我自己的主題,我可以改變它(例如,複選框標記爲橙色),但我無法獲得列表首選項來更改顏色。您可以在這個themes.xml中找到它應該如何完成

themes.xml

+0

你能告訴我你重寫了哪些項目嗎?以及哪些我將不得不重寫-I找不到任何與listpreference有關的內容 – 2013-04-30 16:08:12

相關問題