如何将Uri图像从一个活动转移到另一个活动?

时间:2015-02-05 16:10:35

标签: java android android-intent bitmap uri

在我的应用程序中,我需要将Uri图像从第一个Activity转移到另一个Activity。我知道如何通过意图发送位图。我是一个比较大的程序员,所以我不知道最好做什么:转移Uri有意图或将Uri更改为Bitmap然后发送?

5 个答案:

答案 0 :(得分:3)

为了避免你得到的错误,在Miki franko给出的代码中,替换以下行:

Uri= extras.getString("KEY");

with:

uri= Uri.parse(extras.getString("KEY"));

这只是为了使代码正常工作,因为我认为您并不了解Miki试图通过代码解释的内容。
如果你现在解决了,请告诉我们。

答案 1 :(得分:2)

使用putExtra发送Uri路径:

            Intent intent = new Intent(Intent.ACTION_VIEW);
            intent .setClass(ThisActivity.this,  NewActivity.class);
            intent .putExtra("KEY", Uri);
            startActivity(intent );

在newActivity OnCreate方法中:

   Bundle extras = getIntent().getExtras();
    if (extras != null && extras.containsKey("KEY")) {
        Uri= extras.getString("KEY");
    }

使用那些功能: Uri to String:

Uri uri;
String stringUri;
stringUri = uri.toString();

Uri的字符串:

Uri uri;
String stringUri;
uri = Uri.parse(stringUri);

答案 2 :(得分:0)

        //First Activity to get a Uri
        String uri_Str = Uri.toString();

        Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
        intent .putExtra("uri_Str", uri_Str);
        startActivity(intent);


       //Second Activity get a Uri path
        Bundle b = getIntent().getExtras();
        if (b != null) {
        String uri_Str= b.getString("uri_Str");
        Uri uri = Uri.parse(uri_Str);
        }

答案 3 :(得分:0)

  1. 第一项活动

     Uri uri = data.getData();
            Intent intent=new Intent(Firstclass.class,secondclass.class);
            intent.putExtra("imageUri", uri.toString());
            startActivity(intent);
    
  2. 第二课

    Imageview iv_photo=(ImageView)findViewById(R.id.iv_photo);
    Bundle extras = getIntent().getExtras();
    myUri = Uri.parse(extras.getString("imageUri"));
    iv_photo.setImageURI(myUri);
    

答案 4 :(得分:0)

在您的第一堂课中,您可以像这样传递图像uri:

Intent intent = new Intent();
intent.putExtra("your_key", imageUri.toString());
startActivity(intent);

在第二个活动或接收者活动中,您可以通过以下方式访问图像uri:

Bundle extras = getIntent().getExtras();
if(extras != null){
  Uri imageUri = Uri.parse(extras.getString("your_key"));
}