0

チェックボックスを使用してリストビューで選択したアイテムを取得するにはどうすればよいですか。これに対する回答を検索しますが、理解できるほど明確なものはありません

これが私のリストビューです

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;
        }
    }

タブホスト内にリストビューがあるため、現在のタブで1つのチェックボックスが選択されている場合は、他のタブを無効にする必要があります

そして私はボタンを持っています。リストビューで選択されているすべてのアイテムを知りたい

私を助けてください、事前に感謝します

4

1 に答える 1

2

リンクandroid listactivity onCheckedChangeListenerでコードまたは回答の言及を使用できますか?mListview.getCheckedItemPositions()

于 2013-02-26T06:19:42.250 に答える