2013-02-26 1 views
0

Как я могу получить выбранные элементы в моем ListView с флажком, я искать ответ на это, но ничего не понятно для меня достаточно, чтобы под стендомЭлементы, выбранные в ListView с флажком

вот мой ListView

public void laptopTab() { 
     List<String> listDisplay = new ArrayList<String>(); 
     for (int counter = 0 ; counter<laptopFilter.length;counter ++) { 
      listDisplay.add(laptopFilter[counter]); 
     } 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.filter_listview, 
       R.id.filter_name,listDisplay); 

     laptopLV = (ListView) findViewById(R.id.laptopLV); 
     laptopLV .setAdapter(adapter); 
     laptopLV.setOnItemClickListener(this); 
    } 

и вот мой код для моего onItemClickListener

public void onItemClick(AdapterView<?> arg0, View v, int position , 
      long id) { 
     // TODO Auto-generated method stub 
     if (v != null) { 
      cb = (CheckBox)v.findViewById(R.id.cb); 
      cb.setChecked(!cb.isChecked()); 
     } 
     switch (th.getCurrentTab()) { 
     case 0: 
      if(cb.isChecked()){ 
       th.getTabWidget().getChildTabViewAt(1).setEnabled(false); 
       th.getTabWidget().getChildTabViewAt(2).setEnabled(false); 
       selectedFromLaptopList.add(laptopLV.getItemAtPosition(position).toString()); 
      } 

      else { 
       th.getTabWidget().getChildTabViewAt(1).setEnabled(true); 
       th.getTabWidget().getChildTabViewAt(2).setEnabled(true); 
      } 
      break; 
     case 1: 
      if(cb.isChecked()){ 
       th.getTabWidget().getChildTabViewAt(0).setEnabled(false); 
       th.getTabWidget().getChildTabViewAt(2).setEnabled(false); 
       selectedFromMp3List.add(mp3LV.getItemAtPosition(position).toString()); 
      } else { 
       th.getTabWidget().getChildTabViewAt(0).setEnabled(true); 
       th.getTabWidget().getChildTabViewAt(2).setEnabled(true); 
      } 
      break; 
     case 2: 
      if(cb.isChecked()){ 
       th.getTabWidget().getChildTabViewAt(0).setEnabled(false); 
       th.getTabWidget().getChildTabViewAt(1).setEnabled(false); 
       selectedFromMobileList.add(mobileLV.getItemAtPosition(position).toString()); 
      } else { 
       th.getTabWidget().getChildTabViewAt(0).setEnabled(true); 
       th.getTabWidget().getChildTabViewAt(1).setEnabled(true); 
      } 
     default: 
      break; 
     } 
    } 

у меня есть ListView внутри tabhost, так что я просто отключить вкладку другой, если один флажок установлен на у.е. rrent tab

и у меня есть кнопка. там я хочу знать все элементы, выбранные в ListView

пожалуйста, помогите мне и спасибо заранее

ответ

2

Вы можете использовать код или ответ упоминается в ссылке android listactivity onCheckedChangeListener, а также использовать mListview.getCheckedItemPositions()

+0

, что если он не проверено? это все равно будет работать? – user1708134

+0

Да, вам нужно использовать условия. –

+0

Я положил laptopLV.setChoiceMode (ListView.CHOICE_MODE_MULTIPLE); в моем коде. Мой флажок не проверяется, когда я нажимаю несколько полей – user1708134