我有列表视图与每个行2个文本框和1个复选框。 我想在用户选中复选框时,将一个预定义的drawable设置为该行的背景。设置行背景点击里面的列表视图
我试图在Lisusner上对我的cusotm光标适配器中的getView方法执行它,但没有成功,请帮忙!!!
我有列表视图与每个行2个文本框和1个复选框。 我想在用户选中复选框时,将一个预定义的drawable设置为该行的背景。设置行背景点击里面的列表视图
我试图在Lisusner上对我的cusotm光标适配器中的getView方法执行它,但没有成功,请帮忙!!!
使用此方法getView
在ListAdapter
:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.list_item, null);
CheckBox checkBox = (CheckBox) view.findViewById(R.id.check);
checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
View row = (View) buttonView.getParent();
if (isChecked) {
row.setBackgroundResource(R.drawable.list_item_background_checked);
} else {
row.setBackgroundResource(android.R.color.transparent);
}
}
});
return view;
}
首先找到复选框ID,然后在,
box.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
//set background when checked
}else{
//when unselect checkbox change background
}
}
});
如果这个代码是helful然后给+1或接受。
看到this..http://androidapplicationdeveloper.weebly.com/android-blog.html – Harshid
现在,如果我想,不仅当我点击复选框,背景将被设置,但其中所有行的复选框已被选中,我将如何做到这一点? –
这应该是隐含的。当复选框以编程方式被选中/取消选中时,'onCheckedChangedListener'也会执行。请接受答案。 –
我今天测试了我的应用程序,它的工作原理!感谢Matthias !!! –