title: How to set multiple image in multiple imageview
body: <p>I am new to programming and android. I'm building an app that allows users to upload multiple images,I am using two image view, pic from camera to set one image view and another image view to set another camera pic from to set another images and same thing pic from gallery.I need to upload 2 different image in to different image view. How can I upload? i attached the my code kindly solve my issue.</p>
  
  <pre><code>    public class MainActivity extends AppCompatActivity {
      ImageView imageView1, imageView2;
      private Button btn;
      private static final String IMAGE_DIRECTORY = "/demonuts";
      private int GALLERY = 1, CAMERA = 2;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
          imageView1 = findViewById(R.id.image1);
          imageView2 = findViewById(R.id.image2);
          requestMultiplePermissions();
  
          btn = findViewById(R.id.btn);
          imageView1.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  showPictureDialog();
              }
          });
  
          imageView2.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                   showPictureDialog();
              }
          });
      }
  
      private void showPictureDialog() {
          AlertDialog.Builder pictureDialog = new AlertDialog.Builder(this);
          pictureDialog.setTitle("Select Action");
          String[] pictureDialogItems = {
                  "Select photo from gallery",
                  "Capture photo from camera"};
          pictureDialog.setItems(pictureDialogItems,
                  new DialogInterface.OnClickListener() {
                      @Override
                      public void onClick(DialogInterface dialog, int which) {
                          switch (which) {
                              case 0:
                                  choosePhotoFromGallary();
                                  break;
                              case 1:
                                  takePhotoFromCamera();
                                  break;
                          }
                      }
                  });
          pictureDialog.show();
      }
  
      public void choosePhotoFromGallary() {
          Intent galleryIntent = new Intent(Intent.ACTION_PICK,
                  android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
  
          startActivityForResult(galleryIntent, GALLERY);
      }
  
      private void takePhotoFromCamera() {
          Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
          startActivityForResult(intent, CAMERA);
      }
  
      @Override
      public void onActivityResult(int requestCode, int resultCode, Intent data) {
  
          super.onActivityResult(requestCode, resultCode, data);
          if (resultCode == this.RESULT_CANCELED) {
              return;
          }
          switch (requestCode) {
              case R.id.image1:
                  if (requestCode == GALLERY) {
                      if (data != null) {
                          Uri contentURI = data.getData();
                          try {
                              Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), contentURI);
                              String path = saveImage(bitmap);
                              Toast.makeText(MainActivity.this, "Image Saved!", Toast.LENGTH_SHORT).show();
                              imageView1.setImageBitmap(bitmap);
  
                          } catch (IOException e) {
                              e.printStackTrace();
                              Toast.makeText(MainActivity.this, "Failed!", Toast.LENGTH_SHORT).show();
                          }
                      }
  
                  } else if (requestCode == CAMERA) {
                      Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
                      imageView1.setImageBitmap(thumbnail);
                      saveImage(thumbnail);
                      Toast.makeText(MainActivity.this, "Image Saved!", Toast.LENGTH_SHORT).show();
                  }
  
                  break;
              case R.id.image2:
                  if (requestCode == GALLERY) {
                      if (data != null) {
                          Uri contentURI = data.getData();
                          try {
                              Bitmap bitmap = MediaStore.Images.Media.getBitmap(this.getContentResolver(), contentURI);
                              String path = saveImage(bitmap);
                              Toast.makeText(MainActivity.this, "Image Saved!", Toast.LENGTH_SHORT).show();
                              imageView2.setImageBitmap(bitmap);
  
                          } catch (IOException e) {
                              e.printStackTrace();
                              Toast.makeText(MainActivity.this, "Failed!", Toast.LENGTH_SHORT).show();
                          }
                      }
  
                  } else if (requestCode == CAMERA) {
                      Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
                      imageView2.setImageBitmap(thumbnail);
                      saveImage(thumbnail);
                      Toast.makeText(MainActivity.this, "Image Saved!", Toast.LENGTH_SHORT).show();
                  }
                  break;
          }
      }
  
      public String saveImage(Bitmap myBitmap) {
          ByteArrayOutputStream bytes = new ByteArrayOutputStream();
          myBitmap.compress(Bitmap.CompressFormat.JPEG, 90, bytes);
          File wallpaperDirectory = new File(
                  Environment.getExternalStorageDirectory() + IMAGE_DIRECTORY);
          // have the object build the directory structure, if needed.
          if (!wallpaperDirectory.exists()) {
              wallpaperDirectory.mkdirs();
          }
  
          try {
              File f = new File(wallpaperDirectory, Calendar.getInstance()
                      .getTimeInMillis() + ".jpg");
              f.createNewFile();
              FileOutputStream fo = new FileOutputStream(f);
              fo.write(bytes.toByteArray());
              MediaScannerConnection.scanFile(this,
                      new String[]{f.getPath()},
                      new String[]{"image/jpeg"}, null);
              fo.close();
              Log.d("TAG", "File Saved::---&gt;" + f.getAbsolutePath());
  
              return f.getAbsolutePath();
          } catch (IOException e1) {
              e1.printStackTrace();
          }
          return "";
      }
  
      private void requestMultiplePermissions() {
          Dexter.withActivity(this)
                  .withPermissions(
                          Manifest.permission.CAMERA,
                          Manifest.permission.WRITE_EXTERNAL_STORAGE,
                          Manifest.permission.READ_EXTERNAL_STORAGE)
                  .withListener(new MultiplePermissionsListener() {
                      @Override
                      public void onPermissionsChecked(MultiplePermissionsReport report) {
                          // check if all permissions are granted
                          if (report.areAllPermissionsGranted()) {
                              Toast.makeText(getApplicationContext(), "All permissions are granted by user!", Toast.LENGTH_SHORT).show();
                          }
  
                          // check for permanent denial of any permission
                          if (report.isAnyPermissionPermanentlyDenied()) {
                              // show alert dialog navigating to Settings
                              //openSettingsDialog();
                          }
                      }
  
                      @Override
                      public void onPermissionRationaleShouldBeShown(List&lt;com.karumi.dexter.listener.PermissionRequest&gt; permissions, PermissionToken token) {
                          token.continuePermissionRequest();
                      }
  
                  }).
                  withErrorListener(new PermissionRequestErrorListener() {
                      @Override
                      public void onError(DexterError error) {
                          Toast.makeText(getApplicationContext(), "Some Error! ", Toast.LENGTH_SHORT).show();
                      }
                  })
                  .onSameThread()
                  .check();
      }
  
  
  }
  </code></pre>