gpt4 book ai didi

安卓没有设置默认值

转载 作者:行者123 更新时间:2023-11-30 02:10:32 25 4
gpt4 key购买 nike

我关注了所有the instructions for setting default preference values一步一步但不起作用。

1º 我设置默认值:

<PreferenceCategory android:title="@string/settings_game" >
<ListPreference
android:defaultValue="1.5"
android:entries="@array/intervale_count"
android:entryValues="@array/intervale_count_values"
android:key="interval"
android:title="@string/interval" />
<ListPreference
android:defaultValue="@string/mode_normal"
android:entries="@array/mode_game"
android:entryValues="@array/mode_game_values"
android:key="mode"
android:title="@string/mode" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/settings_sound" >
<ListPreference
android:defaultValue="@string/stone"
android:entries="@array/time_sounds"
android:entryValues="@array/time_sounds_values"
android:key="time_sounds"
android:title="@string/sounds_stones" />
<ListPreference
android:defaultValue="@string/vuvucela"
android:entries="@array/gong_sounds"
android:entryValues="@array/gong_sounds_values"
android:key="gong_sounds"
android:title="@string/sounds_gong" />
</PreferenceCategory>

2º 我在 MainActivity 中获得了首选项:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
}

但是当我打开首选项 View 时,没有选择任何首选项,我在 android:defaultValue 中声明的字符串与我在 中的数据数组中的选项之一相同机器人:条目

注意:我尝试将 true 中的 bool 值更改为

PreferenceManager.setDefaultValues(this, R.xml.preferences, false); 

但还是不行。

我也试过卸载和删除应用程序的数据,但仍然不起作用。

编辑:数组值

<string-array name="intervale_count">
<item>1</item>
<item>1.3</item>
<item>1.5</item>
<item>1.7</item>
<item>2</item>
</string-array>
<string-array name="intervale_count_values">
<item>1000</item>
<item>1300</item>
<item>1500</item>
<item>1700</item>
<item>2000</item>
</string-array>
<string-array name="mode_game">
<item>@string/mode_normal</item>
<item>@string/mode_extension</item>
<item>@string/mode_infinite</item>
</string-array>
<string-array name="mode_game_values">
<item>100</item>
<item>50</item>
<item>1000</item>
</string-array>
<string-array name="time_sounds">
<item>@string/alan</item>
<item>@string/cash_reg</item>
<item>@string/censure</item>
<item>@string/crow</item>
<item>@string/doh</item>
<item>@string/fb_noti</item>
<item>@string/achievement</item>
<item>@string/metal_gear</item>
<item>@string/duck</item>
<item>@string/pan</item>
<item>@string/drum</item>
<item>@string/stone</item>

</string-array>
<string-array name="time_sounds_values">
<item>2131099648</item> <!-- Alan -->
<item>2131099649</item> <!-- Registradora -->
<item>2131099650</item> <!-- Censura -->
<item>2131099651</item> <!-- Cuervo -->
<item>2131099652</item> <!-- DOh -->
<item>2131099653</item> <!-- FB -->
<item>2131099655</item> <!-- logro -->
<item>2131099656</item> <!--metal gear -->
<item>2131099657</item> <!-- pato -->
<item>2131099658</item><!-- sarten -->
<item>2131099660</item> <!-- tambor -->
<item>2131099659</item><!-- stone -->
</string-array>
<string-array name="gong_sounds">
<item>@string/gong</item>
<item>@string/vuvucela</item>
</string-array>
<string-array name="gong_sounds_values">
<item>2131099654</item> <!-- Gong -->
<item>2131099661</item> <!-- Vuvucela -->
</string-array>

最佳答案

ListPreferencedefaultValue 属性需要是一个值,而不是条目文本。换句话说,它应该是您传递给 android:entryValues 的数组中的一个元素,而不是您传递给 android:entries 的数组中的一个元素。

例如,您的锣声首选项应该使用 android:defaultValue="2131099661" 而不是 android:defaultValue="@string/vuvucela"

关于安卓没有设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30171867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com