1

私は次のような共有設定を読んでいます

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);

そして、preferences.getString("list_of_text_modes", "0")私は共有された設定の値を取得できます。私の例では(0または1)

価値だけでなく、タイトルも取得することは可能ですか?

例えば。ListPreferenceを使用しています。

<ListPreference
            android:entries="@array/list_of_text_modes"
            android:entryValues="@array/list_of_text_mode_values"
            android:key="list_of_text_modes"
            android:summary=""
            android:title="@string/title_language_mode" 
            android:defaultValue="default" />       

    <string-array name="list_of_text_modes">
        <item>Default</item>
        <item>Settings</item>
    </string-array>
    <string-array name="list_of_text_mode_values">
        <item>0</item>
        <item>1</item>

「デフォルト」を選択すると「0」になります。どういうわけか「デフォルト」というタイトルを読むことはできますか?または、設定で値のみを読み取ることができますか?

そして、0と1がない場合はどうなりますか?「text1」と「tetx2」として保存するとどうなりますか。キーと値のペアで読み取ることはできますか?

4

3 に答える 3

3

タイトル インデックスがある場合は、リソースからタイトルを抽出できます。このコードを試してください:

CharSequence[] titles = context.getResources().getTextArray(R.array.list_of_text_modes);
String myTitle = titles[titleIndex];
于 2012-08-27T14:25:23.350 に答える
1

値のみを取得できます。DDMS -> データ - データ -> パッケージ名からプルできる実際の共有設定ファイルを見ている場合。値のみが表示され、タイトルではなくキーが保存されます。

ただし、配列に既にあるため、実際には問題にはなりません。

幸運を

于 2012-08-27T14:27:45.937 に答える