AlertDialog.Builder实现多选框的全选和反选功能 多选框全选反选 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 @Overridepublic void onClick(DialogInterface dialog, int which, boolean isChecked) { boolean state = false;//用来标识有没有全选,已经全选则为true if (which == strArr.length - 1) { // 点击全选 for (int i = 0; i < boolArr.length; i++) { if (state){ boolArr[i] = false; } else { boolArr[i] = true; } state = !state; } } else { boolArr[which] = isChecked; }}onClick()改了一下。主要是这里的逻辑有点不对,还不行的话你就自己调一下,重点关注isChecked是true还是false。 我改成if (which == strArr.length - 1) { // 点击全选 isAllChecked = !isAllChecked; for (int i = 0; i < boolArr.length; i++) { if (isAllChecked) { boolArr[i] = true; } else { boolArr[i] = false; } } } else { boolArr[which] = isChecked; }boolean isAllChecked是成员变量,还是不行,debug看过,全选是true的时候,boolArr[]的每一项都是true,全选是false的时候,boolArr[]的每一项都是false,但是true的时候,每一个checkbox都会被打钩,而false的时候只有全选的checkbox的钩被去掉了,其他checkbox的钩还在 我改成if (which == strArr.length - 1) { // 点击全选 isAllChecked = !isAllChecked; for (int i = 0; i < boolArr.length; i++) { if (isAllChecked) { boolArr[i] = true; } else { boolArr[i] = false; } } } else { boolArr[which] = isChecked; }boolean isAllChecked是成员变量,还是不行,debug看过,全选是true的时候,boolArr[]的每一项都是true,全选是false的时候,boolArr[]的每一项都是false,但是true的时候,每一个checkbox都会被打钩,而false的时候只有全选的checkbox的钩被去掉了,其他checkbox的钩还在全选的时候不是都打钩了吗? 如果不是的话这里你的逻辑就不该这么写if (which == strArr.length - 1) { // 点击全选 else { boolArr[which] = isChecked; }点击取消所有选项的时候 将设置不选的代码放到全选外面。 搞定了http://www.eoeandroid.com/forum.php?mod=viewthread&tid=199941&_dsign=ee3d1880 for (int i = 0; i < boolArr.length; i++) { boolArr[i] = isChecked; }这段代码有误吧,这段代码是点击全部处理的逻辑,但是你这个估计ischecked还是为true你这样判断下看看行不if(boolArr[strArr.length - 1] ){ for (int i = 0; i < boolArr.length; i++) { boolArr[i] = true; }}else{ for (int i = 0; i < boolArr.length; i++) { boolArr[i] = false; }}________________________________________________________________________________________________c#.net qrcode creator.net barcode ANDRIOD客户端提取WAP网址 怎么在activity上画一个圆并且不断增大? eclipse怎么打开别人的项目 关于在AppWidget中开启一个service的问题。 EditText 的TextChanged事件中 怎么把不需要的子字符串删除 求UI组件名称 把一个short类型转为低端法保存的二进制, 怎么自己扩展出的Animation弄到xml里面? 我是怎么用Tabhost 实现不同的View和Activity apk签名升级问题 Camera.open()返回一直为null是为什么 地图BMP图片的坐标和现实经纬度的转换
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
boolean state = false;//用来标识有没有全选,已经全选则为true
if (which == strArr.length - 1) { // 点击全选
for (int i = 0; i < boolArr.length; i++) {
if (state){
boolArr[i] = false;
} else {
boolArr[i] = true;
}
state = !state;
}
} else {
boolArr[which] = isChecked;
}
}onClick()改了一下。主要是这里的逻辑有点不对,还不行的话你就自己调一下,重点关注isChecked是true还是false。
isAllChecked = !isAllChecked;
for (int i = 0; i < boolArr.length; i++) {
if (isAllChecked) {
boolArr[i] = true;
} else {
boolArr[i] = false;
}
}
} else {
boolArr[which] = isChecked;
}
boolean isAllChecked是成员变量,还是不行,debug看过,全选是true的时候,boolArr[]的每一项都是true,全选是false的时候,boolArr[]的每一项都是false,但是true的时候,每一个checkbox都会被打钩,而false的时候只有全选的checkbox的钩被去掉了,其他checkbox的钩还在
isAllChecked = !isAllChecked;
for (int i = 0; i < boolArr.length; i++) {
if (isAllChecked) {
boolArr[i] = true;
} else {
boolArr[i] = false;
}
}
} else {
boolArr[which] = isChecked;
}
boolean isAllChecked是成员变量,还是不行,debug看过,全选是true的时候,boolArr[]的每一项都是true,全选是false的时候,boolArr[]的每一项都是false,但是true的时候,每一个checkbox都会被打钩,而false的时候只有全选的checkbox的钩被去掉了,其他checkbox的钩还在
全选的时候不是都打钩了吗? 如果不是的话这里你的逻辑就不该这么写
if (which == strArr.length - 1) { // 点击全选
else {
boolArr[which] = isChecked;
}
点击取消所有选项的时候 将设置不选的代码放到全选外面。
http://www.eoeandroid.com/forum.php?mod=viewthread&tid=199941&_dsign=ee3d1880
boolArr[i] = isChecked;
}
这段代码有误吧,这段代码是点击全部处理的逻辑,但是你这个估计ischecked还是为true
你这样判断下看看行不
if(boolArr[strArr.length - 1] ){
for (int i = 0; i < boolArr.length; i++) {
boolArr[i] = true;
}}else{
for (int i = 0; i < boolArr.length; i++) {
boolArr[i] = false;
}}
________________________________________________________________________________________________
c#.net qrcode creator.net barcode