2016-10-01 7 views
-1

Когда я просматриваю изображение из галереи, я выбираю одно изображение, но в обоих ImageViews установлено одно и то же изображение.
Я хочу другое изображение в моем ImageViews.Когда я просматриваю изображение из галереи, я выбираю одно изображение, но в обоих ImageViews установлено то же изображение

Вот мой скриншот:

screenshot

вот мой код активность:

package com.example.deepak.imageuploaddownload; 

     import android.content.Intent; 
     import android.net.Uri; 
     import android.provider.MediaStore; 
     import android.support.v7.app.AppCompatActivity; 
     import android.os.Bundle; 
     import android.view.View; 
     import android.widget.Button; 
     import android.widget.EditText; 
     import android.widget.ImageView; 
     import android.widget.Switch; 

     import static com.example.deepak.imageuploaddownload.R.id.imageToUpload; 
     import static com.example.deepak.imageuploaddownload.R.id.imageToUploadTwo; 

public class MainActivity extends AppCompatActivity implements View.OnClickListener{ 

    private static final int RESULT_LOAD_IMAGE =1; 
    private static final int RESULT_LOAD_IMAGETWO =1; 

    ImageView imageUpload, imageUploadTwo,imageDownlod; 
    Button btnUplod, btnUplodTwo,btnDownload; 
    EditText etUploadname ,etUploadnameTwo,etDownloadname; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     imageUpload =(ImageView)findViewById(imageToUpload); 
     imageUploadTwo =(ImageView)findViewById(imageToUploadTwo); 
     imageDownlod =(ImageView)findViewById(R.id.imageToDownLoad); 

     btnUplod=(Button)findViewById(R.id.btnUploadImage); 
     btnUplodTwo=(Button)findViewById(R.id.btnUploadImageTwo); 
     btnDownload=(Button)findViewById(R.id.btnDownloadImage); 

     etUploadname=(EditText)findViewById(R.id.etUploadName); 
     etUploadnameTwo=(EditText)findViewById(R.id.etUploadNameTwo); 
     etDownloadname=(EditText)findViewById(R.id.etDownloadName); 

     imageUpload.setOnClickListener(this); 
     imageUploadTwo.setOnClickListener(this); 
     btnUplod.setOnClickListener(this); 
     btnUplodTwo.setOnClickListener(this); 
     btnDownload.setOnClickListener(this); 
    } 

    @Override 
    public void onClick(View v) { 

     switch(v.getId()){ 

      case R.id.imageToUpload: 
       Intent gallryIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
       startActivityForResult(gallryIntent,RESULT_LOAD_IMAGE); 
       break; 
      case R.id.imageToUploadTwo: 
       Intent gallryIntentT = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
       startActivityForResult(gallryIntentT,RESULT_LOAD_IMAGETWO); 
       break; 
      case R.id.btnUploadImage: 
       break; 
      case R.id.btnDownloadImage: 
       break; 

      default: 
       break; 
     }} 

    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && data != null) { 
      Uri selectedImage = data.getData(); 
      imageUpload.setImageURI(selectedImage); 
     } 

     if (requestCode == RESULT_LOAD_IMAGETWO && resultCode == RESULT_OK && data != null) { 
      Uri selectedImagee = data.getData(); 
      imageUploadTwo.setImageURI(selectedImagee); 
     } 

    } 
    } 

ответ

3
private static final int RESULT_LOAD_IMAGE =1; 
private static final int RESULT_LOAD_IMAGETWO =1; 

Убедитесь, что константы имеют различные значения

0
Uri selectedImage = data.getData(); 
imageUpload.setImageURI(selectedImage); 

не непосредственно назначать URI для зрения изображения

Вместо

получить FilePath из Ури и генерировать растровое и, наконец, назначить растрового изображения в ImageView

он будет работает

Счастливая трещина !!!