Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.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
Android 如果将多图像插入到多图像视图中_Android_Imageview - Fatal编程技术网

Android 如果将多图像插入到多图像视图中

Android 如果将多图像插入到多图像视图中,android,imageview,Android,Imageview,如果我想将图像插入imageview,例如,将8个数字的图像插入8个数字的imageview。我试过下面的代码。不知何故,如果我将第一个图像插入到第一个imageview中,结果很好,就会出现一些问题。但是如果我继续将第二个图像插入到第二个图像视图中。第一个imageview将更改为与第二个imageview相同的图像。它一直在敲我的脑袋,我的代码有什么问题 这是openImg和onActivityResult的方法 正如我看到的,下面的代码就是问题所在 if(resultCode == RES

如果我想将图像插入imageview,例如,将8个数字的图像插入8个数字的imageview。我试过下面的代码。不知何故,如果我将第一个图像插入到第一个imageview中,结果很好,就会出现一些问题。但是如果我继续将第二个图像插入到第二个图像视图中。第一个imageview将更改为与第二个imageview相同的图像。它一直在敲我的脑袋,我的代码有什么问题

这是openImg和onActivityResult的方法


正如我看到的,下面的代码就是问题所在

if(resultCode == RESULT_OK){

                Uri selectedImage = data.getData();
                //below line is the problem, you are repeating this for every result remove it
                img1.setImageURI(selectedImage);
                InputStream imageStream = null;

我能知道为什么使用recyclerview更好吗


它将删除您正在执行的所有锅炉板代码中的更多代码。它将更多地是一个动态数据。

与其使用所有这些,不如使用recyclerview和网格布局。我能知道为什么使用recyclerview更好吗?但是如果我删除它,我如何设置从我的图库中获取的图像并将其放在imageview中?如果1==true,您就在这里执行此操作{img1.setImageURIselectedImage;i1=false;b1=true;}
 public void openImg(){
    Intent photoPic = new Intent(Intent.ACTION_PICK);
    photoPic.setType("image/*");
    startActivityForResult(photoPic, SELECT_PHOTO);
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode){
        case SELECT_PHOTO:
            if(resultCode == RESULT_OK){

                Uri selectedImage = data.getData();
                img1.setImageURI(selectedImage);
                InputStream imageStream = null;

                try {
                    //getting the image
                    imageStream = getActivity().getContentResolver().openInputStream(selectedImage);
                    imageStream.close();
                }catch (IOException e){
                    e.printStackTrace();
                }//end try-catch


                if(i1 == true){
                    img1.setImageURI(selectedImage);
                    i1 = false;
                    b1 = true;
                }
                if(i2 == true){
                    img2.setImageURI(selectedImage);
                    i2 = false;
                    b2 = true;
                }
                if(i3 == true){
                    img3.setImageURI(selectedImage);
                    i3 = false;
                    b3 = true;
                }
                if(i4 == true){
                    img4.setImageURI(selectedImage);
                    i4 = false;
                    b4 = true;
                }
                if(i5 == true){
                    img5.setImageURI(selectedImage);
                    i5 = false;
                    b5 = true;
                }
                if(i6 == true){
                    img6.setImageURI(selectedImage);
                    i6 = false;
                    b6 = true;
                }
                if(i7 == true){
                    img7.setImageURI(selectedImage);
                    i7 = false;
                    b8 = true;
                }
                if(i8 == true){
                    img8.setImageURI(selectedImage);
                    i8 = false;
                    b8 = true;
                }
            }//end of 1st IF

            else{
            Toast.makeText(getContext(),"Fail To Get Image", Toast.LENGTH_SHORT).show();
        }

    }//end of Switch
}//end of Method
if(resultCode == RESULT_OK){

                Uri selectedImage = data.getData();
                //below line is the problem, you are repeating this for every result remove it
                img1.setImageURI(selectedImage);
                InputStream imageStream = null;