0

スピナーに文字列のリストを入力しようとしています。彼はコンパイルして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);
            }
        }
4

1 に答える 1

3

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);
于 2012-11-23T14:07:37.910 に答える