Android:使用字符串资源文件填充 Spinner

por*_*ind 1 android

我试图使用字符串资源文件 (strings.xml) 用数组的值填充 Spinner,但不知道为什么,Spinner 显示没有值。

Java代码:

String[] measures = new String[]{};
Resources res = getResources();
Spinner sp1 = (Spinner) findViewById(R.id.spinner);

measures = res.getStringArray(R.array.measures);
List<String> list_measures = new ArrayList<String>(Arrays.asList(measures));

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list_measures);
       adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp1.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

字符串.xml

<resources>
    <string name="days">Days(d)</string>
    <string name="hours">Hours(h)</string>
    <string name="minutes">Minutes(min)</string>
    <string name="seconds">Seconds(s)</string>
 </resources>
Run Code Online (Sandbox Code Playgroud)

数组.xml

<resources>
    <string-array name="measures">
        <item>@string/days</item>
        <item>@string/minutes</item>
        <item>@string/seconds</item>
        <item>@string/hours</item>
    </string-array>
</resources>
Run Code Online (Sandbox Code Playgroud)

我看不出我的微调器出现没有值的问题出在哪里。

Lal*_*dar 6

这就是初始化ArrayAdapterwithstring-array资源的方法。

      final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(
                this,android.R.layout.simple_spinner_dropdown_item,
                getResources().getStringArray(R.array.measures)); //Your resource name

      sp1.setAdapter(arrayAdapter); //attaching the spinner to a spinner.
Run Code Online (Sandbox Code Playgroud)