0
BaseAdapterから拡張されたアダプタがあります。私はスピナーでそれを使用しています。私はアイテムがそこから選択されたときにonItemSelectedListenerを発射することができません。Spinnerで起動するonItemSelectedListenerを取得できませんか?
public class MyAdapter extends BaseAdapter {
..
}
public void foo() {
MyAdapter adapter = new MyAdapter(...);
adapter.setStuff(new String[] { "foo0", "foo1", "fooN" });
Spinner spinner = (Spinner)findViewById(R.id.foo);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) {
Log.e("####", "hello?...");
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
Log.e("####", "hello?...");
}
});
spinner.setAdapter(adapter);
}
スピナーは、そうでない場合は罰金動作し、私は項目を選択したときに、私はただのコールバックを受信しません。コールバックは、ArrayAdapterから派生したアダプタでのみ機能しますか?アダプタの実装を見ずに
おかげ
'setAdapter()'の前に 'setOnItemSelectedListener()'を呼び出してみてください。 – CommonsWare
こんにちは、okはそれを試しましたが、まだ何もありませんでした。アー。 – user291701
'setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){'おそらく、あなたは 'AdapterView'の代わりに異なる' import'を持っています –