首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将URI传递给意图?

如何将URI传递给意图?
EN

Stack Overflow用户
提问于 2011-11-05 08:57:50
回答 7查看 111.4K关注 0票数 109

我试图将一个URI对象传递给我的意图,以便在另一个活动中使用该URI。

如何传递URI?

代码语言:javascript
复制
private Uri imageUri;
....
Intent intent = new Intent(this, GoogleActivity.class);
intent.putExtra("imageUri", imageUri);
startActivity(intent);
this.finish();

现在如何在其他活动中使用此URI?

代码语言:javascript
复制
 imageUri = extras.getString("imageUri"); // I know thats wrong ...
EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-11-05 09:08:23

您可以将uri存储为字符串。

代码语言:javascript
复制
intent.putExtra("imageUri", imageUri.toString());

然后将字符串转换回uri,如下所示

代码语言:javascript
复制
Uri myUri = Uri.parse(extras.getString("imageUri"));
票数 194
EN

Stack Overflow用户

发布于 2012-12-21 06:16:17

Uri类实现了Parcelable,因此可以直接从Intent中添加和提取它

代码语言:javascript
复制
// Add a Uri instance to an Intent
intent.putExtra("imageUri", uri);

// Get a Uri from an Intent
Uri uri = intent.getParcelableExtra("imageUri");

您可以对任何实现Parcelable的对象使用相同的方法,如果需要,还可以在您自己的对象上实现Parcelable

票数 147
EN

Stack Overflow用户

发布于 2013-11-29 19:04:57

在Intent中,您可以直接将Uri。您不需要将Uri转换为字符串,然后再转换回Uri。

看看这个简单的方法。

代码语言:javascript
复制
// put uri to intent 
intent.setData(imageUri);

并从intent中获取Uri:

代码语言:javascript
复制
// Get Uri from Intent
Uri imageUri=getIntent().getData();
票数 58
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8017374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档