2011-09-12 10 views
0

このコードがNullPointExceptionをスローする理由は何ですか?AndroidスピナーがNullPointExceptionを返す

Spinner spinnerLoadLayouts = (Spinner)this.findViewById(R.id.spnLoadLay); 

    ArrayAdapter<CharSequence> adapter = 
    new ArrayAdapter<CharSequence>(this, android.R.layout.simple_spinner_item, new ArrayList<CharSequence>()); 

    adapter.add("aaa"); adapter.add("bbb"); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    spinnerLoadLayouts.setAdapter(adapter); 

ありがとうございます! :)

+0

正確にNullPointerExがスローされますか?私は最後の行を仮定する。 – thomas

+0

はい、最後の行にあります。 – Roger

答えて

1

私は、ビューまたはアクティビティがR.id.spnLoadLay

Quoteを見つけることができないことを推測:

findViewById:戻り値:階層またはnull

+0

申し訳ありませんが、それはdialogViewから来ているのを忘れてしまいました。 :)ありがとう、働く。今。 – Roger

1

で与えられたタグを持つビューエラーが最後の行にある場合、spinnerLoadLayoutsはNULLです。

spnLoadLayビューが現在のビューに実際にある場合にのみ(あなたが出回っインスタンスの上setContentViewと呼ばれているXMLで提供されています)この

(Spinner)this.findViewById(R.id.spnLoadLay); 

を行うことができますので、これは可能性があります。それを画面に置かないと、findViewByIdを使って見つけることができません。そのためにInflaterを使用する必要があります。