0

每当我尝试单击浏览按钮时,我都想浏览我的画廊并从中选择一张照片并将其显示在新活动中。直到我在同一个活动上显示照片之前没有错误,但是一旦我更改代码以将照片转移到另一个意图上,就会出现强制关闭错误 在此处输入图像描述

这是我的代码:

主屏幕 :

Button button = (Button) findViewById(R.id.Button01);
    button.setOnClickListener(new OnClickListener() 
    {
          public void onClick(View arg0) 
          {
                     Intent intent1 = new Intent(MainActivity.this,Edit.class);
             startActivity(intent1);
          }

    });

另一个屏幕:

public class Edit extends Activity 
   {

private String selectedImagePath;
private static final int SELECT_PICTURE = 1;
private ImageView img;

      protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.edit);

    img = (ImageView)findViewById(R.id.ImageView1);




     Intent intent = new Intent();
         intent.setType("image/*");
         intent.setAction(Intent.ACTION_GET_CONTENT);
         startActivityForResult(Intent.createChooser(intent,"Select Picture"), SELECT_PICTURE);

}

 public void onActivityResult(int requestCode, int resultCode, Intent data) 
 {

    if (resultCode == RESULT_OK) 
        {
            if (requestCode == SELECT_PICTURE) 
            {
                Uri selectedImageUri = data.getData();
                selectedImagePath = getPath(selectedImageUri);
                System.out.println("Image Path : " + selectedImagePath);
                img.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);
    }
4

0 回答 0