ArrayAdapter和Spinner获取空指针异常

时间:2011-12-06 21:26:38

标签: android arrays list nullpointerexception spinner

我正在尝试向我的微调器添加项目,但我正在

12-06 15:44:13.828:E / AndroidRuntime(763):致命异常:主要 12-06 15:44:13.828:E / AndroidRuntime(763):android.content.res.Resources $ NotFoundException:资源ID#0x7f050004类型#0x12无效

Spinner options;
private String spinnerarray[4];


@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fluidscreen);

    options = (Spinner)findViewById(R.id.options);

    spinnerarray[0] = "Water";
    spinnerarray[1] = "Gatorade/Powerade";
    spinnerarray[2] = "Soda";
    spinnerarray[3] = "Other";

    ArrayAdapter adapter = new ArrayAdapter(this, R.id.textView1, spinnerarray);
    options.setAdapter(adapter);


}

1 个答案:

答案 0 :(得分:1)

在开始向数组添加元素之前,请执行以下操作:

spinnerarray = new String[4];

为你的String元素分配内存需要它,没有它你会得到 NullPointerException

如果您遇到资源问题,请将为 ArrayAdapter 指定的 R.id.textView1 更改为

android.R.layout.simple_spinner_item

这将引用orroids默认的TextView元素 如果您愿意使用简单的TextView Android小部件而不创建任何用于存储Spinner schoice的奇特视图,那么这是一个很好的设计功能