2015-08-06 3 views
-6

Я хочу создать диалоговое окно, подобное тому, которое было найдено в клиенте Gmail. Настройки-> Общие настройки-> Автоопределение (не может прикреплять изображение, но это простой переключатель переключателей с тремя элементами). Я не могу найти способ установить выбранный элемент из кода и не получить индекс текущего выбранного элемента; он всегда возвращает -1. Ручной выбор работает ОК. Я пробовал использоватьКак программно выбрать элемент списка?

listView.setSelection(position); 

Обертывание его в Runnable тоже не помогло. Есть идеи?

+0

Проверьте https://abhik1987.wordpress.com/2013/02/06/android-alert-dialog-with-single-choice-item-selection-implementation/ –

+0

@JaiSoni. Спасибо, так я и построил диалог. (~~ Они не задают параметры из кода, хотя ~~ scratch, что они делают, это в setSingleChoiceItems, я не заметил) и предполагаем использование локальной переменной для сохранения результата выбора, чего я хотел избежать, потому что это явно уже есть. listItem.getCheckedItemPosition() - способ его извлечения. – user3768771

ответ

0

я наткнулся на тот же problem..in мой случай я сделать первый просмотр списка значение, как пустой и я сделал все, что у сделал со второго элемента списка ..

new String[]{//this is my list view 

        getString(R.string.blank), 
        getString(R.string.Trans_Detail), 
        getString(R.string.Trans_Summary), 
        getString(R.string.Logout), 
      })); 

clickListener:

public void onNavigationDrawerItemSelected(int position) { 
    // update the main content by replacing fragments 
    Intent intent; 
    switch (position) { 

     case 0: 
      break; 
     case 1: 

      break; 
     case 2: 
      intent = new Intent(TransDetail.this, TransSummary.class); 
      startActivity(intent); 
      break; 
     case 3: 
      intent = new Intent(TransDetail.this, LogOut.class); 
      startActivity(intent); 
      break; 
    } 

делая это я пропустил авто возвращается -1 это не точная code..but и может получить некоторое представление для ур кода

0

ОК, должны были с помощью

listView.setItemChecked(position, boolean) 

и

listView.getCheckedItemPosition() 

вместо этого.

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