1

これCheckBoxListView私を夢中にさせています。StackOverflow でこれについて多くのことを検索しましたが、これを修正することはできません。

ListView問題は、私が膨らませているカスタムアダプターを持っていることですCheckBox.

コードは次のとおりです。

public class settingadapter extends BaseAdapter{

    private Activity recievedactivity;

    private String[] recieveddescription;
    private String[] recusername;
    private String allitems="";
    private String[] itemchecked;

    private static LayoutInflater inflator=null;


    public settingadapter(Activity recactivity,String[] username, String[] recdescription ){
        recievedactivity=recactivity;
        recusername=username;
        recieveddescription=recdescription;

        inflator=(LayoutInflater)recievedactivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);



    }
    public settingadapter(Activity recactivity,String[] username, String[] recdescription ,String all){
        recievedactivity=recactivity;
        recusername=username;
        recieveddescription=recdescription;
        allitems=all;
        inflator=(LayoutInflater)recievedactivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);


    }


    public int getCount() {
        // TODO Auto-generated method stub
        return recusername.length;
    }

    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }
    static class ViewHolder{
        TextView usernameTextView;
        TextView statusTextView;
        CheckBox checkView;
    }

    public View getView(final int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        final ViewHolder viewHolder;

        if(convertView== null)
        {
            viewHolder=new ViewHolder();

            convertView=inflator.inflate(R.layout.item, null);

            viewHolder.usernameTextView=(TextView)convertView.findViewById(R.id.textView1);
            viewHolder.statusTextView=(TextView)convertView.findViewById(R.id.text);
            viewHolder.checkView=(CheckBox)convertView.findViewById(R.id.checkBox1);





            convertView.setTag(viewHolder);


        }else{
            viewHolder=(ViewHolder)convertView.getTag();
        }
            viewHolder.usernameTextView.setText(recusername[position]);
            viewHolder.statusTextView.setText(recieveddescription[position]);
             //Add listener to the checkbox


            System.out.println("testing alpha"+recusername[position]);

            if(allitems.equals("All")){
                viewHolder.checkView.setChecked(true);
            }
            else if (allitems.equals("---Select User---")){
                viewHolder.checkView.setChecked(false);
            }
            else
             return convertView;  
            //image.setBackgroundResource(R.drawable.check);



            return convertView;



    }

}

これで、CheckBoxクリックされたものを取得する方法と、対応するテキストを取得する方法を教えてください。

4

1 に答える 1

0

これらのコードを確認してください

ここでは、人が onclick イベントを追加し、タグを取得しています。 Androidチェックボックスでリストビューのアイテムを識別する方法

チェックボックスのオンクリックなしの同じコード http://windrealm.org/tutorials/android/listview-with-checkboxes-without-listactivity.php

それがあなたを助けることを願っています:)

于 2012-07-31T12:21:19.000 に答える