checkedTextView OnClickListener .setChecked()无效

时间:2017-08-17 05:07:10

标签: android

我创建了一个自定义适配器并将其应用于listView,但是当我单击CheckTextView项时, .setChecked()方法不会更改UI上单选按钮的状态。

int getPosition = position;
checkedTextView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {

            if (checkedTextView.isChecked()) {
                Log.i("Username", Title.get(getPosition) + " is no longer checked");

                checkedTextView.setChecked(false);

            } else {
                Log.i("Username", Title.get(getPosition) + " is checked");
                checkedTextView.setChecked(true);


            }

    }
});

但是日志显示正在检查和取消选中视图。

我错过了什么?

由于

1 个答案:

答案 0 :(得分:0)

我不知道为什么会这样,但我有一个想法以另一种方式实现它

假设您正在使用自定义适配器加载列表项

在自定义适配器中创建视图时为CheckedTextView设置OnClickListener

final CheckedTextView ct = (CheckedTextView) view
            .findViewById(R.id.checkedTextView);
ct.setText("text");
ct.setOnClickListener(new OnClickListener() {           
@Override
public void onClick(View v) {
    // do what ever you want to perform here
    if(ct.isChecked()){

     } else {

     }
 }
});