安らかなAPIからプルしているJSONオブジェクトをSpinnerに追加しようとしています。
しかし、アダプターをスピナーで動作させる方法はわかりません。私が試してみました getActivity()
そして、私は「試した this
キーワード。どちらも機能しておらず、このコンテキストで人々がスピナーを更新しようとしているものをGoogleで見つけることはできません。
これが私が使っているコードです。 http://pastebin.com/bQWDHekB。私がちょうど getActivity()
それは言う、 The method getActivity() is undefined for the type new Runnable(){}
しかし私が使うとき this
と言う The constructor ArrayAdapter<String>(new Runnable(){}, int, String[]) is undefined
-編集- マールテンスの回答によると、私は MainActivity.this
よりよく働いた getApplicationContext()
。あなたが使うとき getApplicationContext()
別のスタイルを使用する傾向があり、スピナーに白い背景に白いテキストが表示されるようにしました。うまくいけば、これは私と同じトラブルを抱えた他の誰かを助けます。
回答:
回答№1は0まあ、それは Runnable
それはない getActivity()
方法。
置き換えることにより、ラッピングアクティビティへの参照を取得できます。
new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_dropdown_item, array_spinner);
〜によって
new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_dropdown_item, array_spinner);
または、必要なのは Context
new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, array_spinner);
これは
new ArrayAdapter<String>(MainActivity.this.getApplicationContext(), android.R.layout.simple_spinner_dropdown_item, array_spinner);