Android Spinner не срабатывает - PullRequest
       0

Android Spinner не срабатывает

4 голосов
/ 18 ноября 2011

В моем приложении я использую счетчик, это отображается с spinner.performClick().После многих попыток я заметил, что мой код не вызывает onItemSelected method, затем я попытался добавить аннотацию @Override, но она возвращает как ошибку и говорит удалить эту аннотацию.вот этот код:

Spinner colorSpinner = new Spinner(this);
ColorFriendsSpinnerAdapter adapter = new ColorFriendsSpinnerAdapter(getApplicationContext(), liste, R.layout.color_dropdown, new String[] { "Icon" }, new int[] { R.id.colorDropdown });
//adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
colorSpinner.setAdapter(adapter);
colorSpinner.performClick();

colorSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long id) { 
               editColorXml(position);
        }

        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub

        }
    });

Спасибо за любую помощь, и извините за мой английский.

Ответы [ 2 ]

1 голос
/ 18 ноября 2011

Образец ItemSelectedListner, нет необходимости переопределять аннотацию.

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

            public void onItemSelected(AdapterView<?> arg0, View arg1,
                    int arg2, long arg3) {
                // TODO Auto-generated method stub

            }

            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub

            }
        });

установить слушателя до colorSpinner.performClick(). в этом коде спиннер будет нажиматься в тот момент, когда слушатель не установлен.

0 голосов
/ 07 августа 2012

Попробуйте этот код ..

final List<String> list=new ArrayList<String>();
list.add("Item 1");
list.add("Item 2");
list.add("Item 3");
list.add("Item 4");
list.add("Item 5");

final Spinner sp1= (Spinner) findViewById(R.id.spinner1);

ArrayAdapter<String> adp1 = new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_1,list);
adp1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp1.setAdapter(adp1);

sp1.setOnItemSelectedListener(new OnItemSelectedListener() {
  @Override
  public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
    Toast.makeText(getBaseContext(), list.get(position), Toast.LENGTH_SHORT).show();
  }

  @Override
  public void onNothingSelected(AdapterView<?> parent) {
  }
});
...