我有1-Checkbox,1-EditText和2-TextView的列表视图。我想要做的是当我点击checkBox然后根据检查状态EditText样式也应该改变。我已经在Baseadapter getView()方法编码如下:Android:以编程方式更改ListView中EditText的样式
我做错了什么?
holder.checkBox.setTag(holder.editText);
if (boolAdpaterArrayList.get(position)) {
holder.editText.setTextAppearance(context,
R.style.edittextStyleChecked);
holder.checkBox.setChecked(true);
} else {
holder.editText.setTextAppearance(context,
R.style.edittextStyleUnchecked);
holder.checkBox.setChecked(false);
}
}
holder.checkBox
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton view,
boolean isChecked) {
EditText editText = (EditText)buttonView.getTag();
if(isChecked){
editText.setTextAppearance(context,
R.style.edittextStyleChecked);
}else{
editText.setTextAppearance(context,
R.style.edittextStyleUnchecked);
}
notifyDataSetChanged();
}
});
为什么downvote ??? – Pankaj
你点击复选框项目后再次刷新列表视图适配器吗? –
是的,我通过notifyDataSetChanged() – Pankaj