2

リストビュー用のカスタムアダプタがあります。行ビューはチェックボックスです。私はsetOnClickListener()、ユーザーがチェックボックスをクリックしたときに処理するために使用しました。私が疑問に思っているのは、チェックボックスがクリックされたときにリストビューのチェックボックスの位置を知る方法があるかどうかです。

これが役立つ場合の私のアダプターのコードです。

private class TagAdapter extends BaseAdapter 
{
    public TagAdapter(ArrayList<Tag> items) 
    {
        mTagList = items;
    }
    public int getCount() 
    {
        return mTagList.size();
    }
    public Object getItem(int position) 
    {
        return mTagList.get(position);
    }
    public long getItemId(int position) 
    {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent)
    {
        View V = convertView;

        if(V == null) 
        {
            LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            V = vi.inflate(R.layout.tag, null);
        }

        Tag t = (Tag) mTagList.get(position);
        TextView tagName = (TextView)V.findViewById(R.id.checkBox1);
        CheckBox cb = (CheckBox)V.findViewById(R.id.checkBox1);
        cb.setChecked(t.isSelected());
        cb.setOnClickListener(new View.OnClickListener() //the add tag button "+"
        {
            public void onClick(View view) 
            {

            }

       });

        tagName.setText(t.getTagName());
        return V;
    }



}
4

1 に答える 1

2

チェックボックスを作成するときは、setTagメソッドを使用して必要なデータを追加します。リストアイテムをタグとして保存することもできます。

于 2013-01-29T01:56:40.043 に答える