0

我有三个微调器,两个由代码填充,第三个来自 XML arrays.xml。第三个没有显示任何标签,只是每个项目的空行。

我在 Logcat 中遇到的错误:

W/ResourceType(22121):在包 0 中获取 0x010802c8 (t=7 e=712) 条目失败(错误 -75)

但我不知道如何处理这条线......我之前做了 xml 填充微调器,它们没问题,我不知道我做错了什么......

我的布局:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >


    <TextView
        android:id="@+id/text_from"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/text_from" />

    <Spinner
        android:id="@+id/spinner_start"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/text_from"  />

    <TextView
        android:id="@+id/text_length"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/text_length"
        android:layout_below="@id/spinner_start" />

    <Spinner
        android:id="@+id/spinner_length"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:entries="@array/length_value"
        android:entryValues="@array/length_value"
        android:defaultValue="10"
        android:layout_below="@id/text_length"  />

    <CheckBox
        android:id="@+id/check_from_lesson"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/check_from_lesson"
        android:layout_below="@id/spinner_length" />

    <Spinner
        android:id="@+id/spinner_lesson"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/check_from_lesson" />

    <Button
        android:id="@+id/button_select_from_list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_select"
        android:layout_below="@id/spinner_lesson" />

    <Button
        android:id="@+id/button_ok"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_ok"
        android:layout_below="@id/spinner_lesson"
        android:layout_toRightOf="@id/button_select_from_list"
        android:onClick="onOkButtonPress" />


</RelativeLayout>

我的arrays.xml:

    <?xml version="1.0" encoding="utf-8"?>
<resources>

    <array name="length_value">
        <item>5</item>
        <item>10</item>
        <item>15</item>
        <item>20</item>
        <item>25</item>
   </array>
</resources>

我的代码调用布局并填充其他 2 个微调器:

public void setTestParams() {

        setContentView(R.layout.main_popup_layout);
        sp_lesson = (Spinner)findViewById(R.id.spinner_lesson);     
        Spinner sp_start = (Spinner)findViewById(R.id.spinner_start);
        sp_lesson.setEnabled(false);

        List<String> lessons = new ArrayList<String>();
        List<String> start = new ArrayList<String>();
        lessons=getLessons();
        start=getStart();

        ArrayAdapter<String> spAdapterStart = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, start);
        ArrayAdapter<String> spAdapterLessons = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, lessons);

        spAdapterStart.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spAdapterLessons.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        sp_start.setAdapter(spAdapterStart);
        sp_lesson.setAdapter(spAdapterLessons);


        spAdapterLessons.notifyDataSetChanged();
        spAdapterStart.notifyDataSetChanged();

        final CheckBox cb_lesson = (CheckBox)findViewById(R.id.check_from_lesson);
        cb_lesson.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                if(cb_lesson.isChecked()){
                    sp_lesson.setEnabled(true);
                }else{
                    sp_lesson.setEnabled(false);
                }
            }
        });


    }
4

3 回答 3

1

您从资源中获取数据但找不到的 Spinner

那么你应该添加:

 android:entries="@array/length_value"

到你的 xml 文件中的那个Spinner ......

并更改为:

<string-array name="length_value">
    <item>5</item>
    <item>10</item>
    <item>15</item>
    <item>20</item>
    <item>25</item>
</string-array>
于 2013-08-24T12:50:48.503 回答
0

尝试这个,

Resources res = getResources();
apModeAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, res.getStringArray(R.array.anti_pump_ap_mode_array) );
于 2013-08-24T12:44:02.020 回答
0

尝试这个 :

<string-array name="length_value">
        <item>5</item>
        <item>10</item>
        <item>15</item>
        <item>20</item>
        <item>25</item>
    </string-array>
于 2013-08-24T12:50:14.923 回答