2013-10-09 25 views
0

我正在編輯照片的應用程序。Android:圖庫

我在第一個活動中有一個按鈕,第二個活動中有一個ImageView。當我點擊按鈕時,它會打開畫廊,我可以選擇一個圖像。所選圖像需要在第二個活動中出現在我的ImageView中,但不是。暫時我在第一個活動中顯示圖像自我,但任何人都可以告訴我如何在下一個活動中顯示該圖像。

以下是我的代碼。

public class Camera_Gallery_Option extends Activity { 

    private static final int CAMERA_REQUEST = 1888; 
    private static final int SELECT_PICTURE = 1; 
    private String selectedImagePath; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.camera_gallery_option); 
     Button galleryButton= (Button) findViewById(R.id.button1); 

     galleryButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent(); 
       intent.setType("image/*"); 
       intent.setAction(Intent.ACTION_GET_CONTENT); 
       startActivityForResult(
        Intent.createChooser(intent, "Select Picture"), 
        SELECT_PICTURE); 
      } 
     }); 
    } 

    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (resultCode == RESULT_OK) { 
      if (requestCode == SELECT_PICTURE) { 
       Uri selectedImageUri = data.getData(); 
       selectedImagePath = getPath(selectedImageUri); 
       System.out.println("Image Path : " + selectedImagePath); 
       imageview.setImageURI(selectedImageUri); 
      } 
     } 
    } 

    public String getPath(Uri uri) { 
     String[] projection = { MediaStore.Images.Media.DATA }; 
     Cursor cursor = managedQuery(uri, projection, null, null, null); 
     int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
     cursor.moveToFirst(); 
     return cursor.getString(column_index); 
    } 

回答

1

傳遞selectedImageUri到第二活動並設置URI到圖像視圖中的第二活動?

startActivity(new Intent(this, SecondActivity.class).setData(selectedImageUri)); 

在SecondActivity:

protected void onCreate(Bundle savedInstanceState) { 
    ... 
    imageView.setImageURI(getIntent().getData()); 
}