2013-07-11 4 views
0

У меня есть OnItemClick, атакованный в listview, и внутри onItemClick() он открывает диалог с помощью переключателей «Отмена» и «Выбрать». В диалоговом окне, я думаю, мне нужен какой-то элемент clickListener или itemSelectedListener, поэтому я могу передать значение элемента списка, который они выбрали.OnItemClickListener Не удается создать экземпляр типа AdapterView.OnItemClickListener

@Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
       if(position == 0) { 
        CheckBox checkBox = (CheckBox) mRoot.findViewById(R.id.cbRowCheckBox); 
        checkBox.setChecked(!checkBox.isChecked()); 
       } 
       if(position == 1) { 

        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 
        builder.setTitle(R.string.sync_frequency); 

        ListView listView = new ListView(getActivity()); 
        listView.setOnItemClickListener(new OnItemClickListener()); <----- 
        String[] syncOptions = mSyncOptions; 
        ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.select_dialog_singlechoice, android.R.id.text1, syncOptions); 
        builder.setSingleChoiceItems(modeAdapter, 0, null); 
        builder.setView(listView); 
        builder.setPositiveButton(R.string.sync_select,null); 
        builder.setNegativeButton(R.string.sync_cancel,null); 
        final Dialog dialog = builder.create(); 
        dialog.show(); 
       } 
      } 
     }); 

Но я получаю сообщение об ошибке Не удается создать экземпляр типа AdapterView.OnItemClickListener. Каков наилучший маршрут или как я могу это исправить, чтобы я мог сообщить, какой радиокнопка выбран пользователем? Благодаря!

+0

вы должны необходимо переопределить 'onItemClick' метода OnItemClickListener –

+0

@Override есть в верхних – DDukesterman

ответ

0

Если я вас правильно понимаю, вы хотите использовать listener, если RadioButton is checked. Для этого использования onCheckedChangeListener

Вы можете использовать второй параметр, чтобы получить id из RadioButton, который был проверен, после чего вы можете делать все, что от вас требуется.

yourRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() 
{ 
    @Override 
    public void onCheckedChanged(RadioGroup group, int checkedId) 
    { 
     if (checkedId == R.id.some_id) 
     { 
      // do something 
     } 

    }); 
+0

Радиостанции генерируется в android.R.layout.select_dialog_singlechoice. Как я могу выбрать listView и поставить слушателя на переключатели? – DDukesterman

Смежные вопросы