如何监听CheckedTextView并获取其值

最近在编写软件时,运用到了android.R.layout.simple_list_item_checked这个布局来做adapter适配器。查看源码可知道这个布局中只有一个CheckTextView,CheckTextView就是一个CheckBox的Textview。我想做的是当选中了CheckTextView后,可以获得其中的TextView值。上网找了半天也没找到什么资料。后来自己参考ListView的点击监听事件,完成了这个想法。

代码如下,挺简单的,看看就能明白。

ListViewC初始化
renyuan=(ListView)findViewById(R.id.renyuan);
adapter= new ArrayAdapter(this,android.R.layout.simple_list_item_checked,list);
renyuan.setAdapter(adapter);
renyuan.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
//传递值
renyuan.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView adapterView, View view, int i, long l) {
                ListView listView=(ListView)adapterView;
                View mView=listView.getChildAt(i);
                CheckedTextView checkedTextView=(CheckedTextView)mView.findViewById(android.R.id.text1);//初始化得到单位item

            if (checkedTextView.isChecked() == true) {//是否选中了
                listPerson.add(checkedTextView.getText().toString());//获取其值
            } else {
                listPerson.remove(checkedTextView.getText().toString());
            }
        }

});
花了两个小时才解决这个问题,自己还是不行啊。不过挺高兴的,马上就要编完自己的第一款游戏啦~十一长假也要来了,祝各位十一快乐,出去走走,别在屋里苦逼的编代码了~

你可能感兴趣的:(如何监听CheckedTextView并获取其值)