ArrayAdapter with Spinner returning android.content.res.Reso



我试图用字符串列表填充微调器。他在 android 中编译和运行,但是当我在微调器中输入触摸时,程序停止并返回此错误:

android.content.res.Resources$NotFoundException:资源 ID #0x7f090003 类型 #0x12

无效
protected void onPostExecute(List<String> myList)
        {
            if (!myList.isEmpty())
            {
                ArrayAdapter<String> adp = new ArrayAdapter<String>(MyActivity.this, android.R.layout.simple_spinner_item, myList);
                adp.setDropDownViewResource(R.id.mySpinner);
                mySpinner.setAdapter(adp);
            }
            else
            {
                Toast.makeText(getApplicationContext(), "Warning.", Toast.LENGTH_SHORT).show();
                Intent i = new Intent(myActivity.this, Preferences.class);
                startActivity(i);
            }
        }

我认为setDropDownViewResource方法都需要布局资源 ID。

您应该替换

adp.setDropDownViewResource(R.id.mySpinner);

adp.setDropDownViewResource(R.layout.mySpinner);

并确保(当然)文件res/layout/mySpinner.xml存在

或者仅使用 SDK 中的默认布局:

adp.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

最新更新