Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 关闭应用程序并返回后复选框计数超过_Java_Android - Fatal编程技术网

Java 关闭应用程序并返回后复选框计数超过

Java 关闭应用程序并返回后复选框计数超过,java,android,Java,Android,字符串数组计数为3。我正在从gridview检查画廊图像3 基于数组计数,它被选中三个图像。但是在关闭应用程序并返回后,它总是显示exceptdebug。它必须再次选中三个复选框 MainActivity.java: String[] strArr = {"One","Two","Three"}; int size = strArr.length; public void changeSelection(View v

字符串数组计数为3。我正在从gridview检查画廊图像3

基于数组计数,它被选中三个图像。但是在关闭应用程序并返回后,它总是显示
except
debug。它必须再次选中三个复选框

MainActivity.java:

String[] strArr = {"One","Two","Three"};
    
int size = strArr.length;

    public void changeSelection(View v, int position) {

        if (data.get(position).isSeleted) {
            data.get(position).isSeleted = false;
            
            Log.e("UnChecked","Unchecked");
            
        } else if(size < strArr.length){
            data.get(position).isSeleted = true;
            
            Log.e("Checked","Checked");
            
        } else {
            Log.e("Exceed", "Exceed");
        }

        ((ViewHolder) v.getTag()).imgQueueMultiSelected.setSelected(data.get(position).isSeleted);
    }
String[]strArr={“一”、“二”、“三”};
int size=strArr.length;
公共无效更改选择(视图v,内部位置){
if(data.get(position.isSeleted){
data.get(position).isSeleted=false;
Log.e(“未检查”、“未检查”);
}否则,如果(尺寸

有人能帮我吗?谢谢。

根据您的代码。实际上,您可能有一个输入错误:

if (data.get(position).isSelected) {
        data.get(position).isSelected = false;

        Log.e("UnChecked","Unchecked");

    } else if(size < strArr.length){
        data.get(position).isSelected = true;

        Log.e("Checked","Checked");

    }
if(data.get(position.isSelected){
data.get(position).isSelected=false;
Log.e(“未检查”、“未检查”);
}否则,如果(尺寸
isSelected应该是isSelected

而且,大小永远不会小于strArr.length,因为它们都是相同的东西。这将导致if-else语句始终转到最终的else语句

未选中复选框是因为未保存应用程序的状态。也许这个答案会帮助你: