我创建了一个自定义适配器并将其应用于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);
}
}
});
但是日志显示正在检查和取消选中视图。
我错过了什么?
由于
答案 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 {
}
}
});