簡體   English   中英

Android - 是否可以專門為每個 ListPreference 條目更改屬性?

[英]Android - Is it possible to change a property specifically for each ListPreference entry?

我在我的代碼中定義了一個普通的 Android ListPreference -

<ListPreference
        android:title="Font"
        android:summary="Choose the font of the reader"
        android:key="fontList"
        android:entries="@array/fonts"
        android:entryValues="@array/fontValues">

    </ListPreference>

它提供了用戶可以選擇的幾種不同字體類型的列表,沒什么特別的。 我想知道的是,有沒有辦法將每個列表項的字體設置為它顯示的字體? 這將是一個很好的功能,因為它允許用戶在必須測試之前查看他們必須選擇的內容。

我看不到任何明顯的方法,或者至少不會破壞漂亮的默認 UI 的方法。

任何幫助,將不勝感激。

最好的方法是擴展 ListPreference class 並實現您自己的偏好。 從 memory 我認為您需要覆蓋 onCreateDialogView、onBindDialogView、onSetInitialValue 和 onDialogClosed 方法。 最佳查看位置是developer.android.com 上的 List Preference 頁面

就像他對 fonts 所說的那樣,你需要定制一個。 但是我發現有很多不同的默認 android:theme="@android:style/Theme....." 嘗試一次可用的......其中有 9-10 個。 也許你會更接近你需要擴展你自己的自定義 UI 的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM