2

如何显示从"android.intent.action.SEND"in接收到的图像imageview?用户从应用程序列表中选择我的应用程序以共享图像。图像是sent via intent并且我的活动打开但如何在图像视图中使用此图像?

使用

Bitmap  thumbnail = (Bitmap) getIntent().getExtras().get("data");

没有帮助和

getIntent().getType() returns image/jpg
4

3 回答 3

3

您正在 Intent 接收图像,因此您必须将 Manifest 更新为:

<activity android:name=".Your_Activity" >
    ...
    ...
    <intent-filter>
    ...
        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="image/*" />
    </intent-filter>
</activity

那么Activity需要:

void onCreate (Bundle savedInstanceState) {
...
// Get intent, action and MIME type
Intent intent = getIntent();
String action = intent.getAction();
String type = intent.getType();

if (Intent.ACTION_SEND.equals(action) && type != null) {
    if (type.startsWith("image/")) {
        Uri imageUri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM);
        if (imageUri != null) {
            YourImageView.setImageUri(imageUri);
        }
    }
.
.
.
于 2012-07-21T09:22:40.150 回答
0

试试这个

 BitMap thumnail= (Bitmap) getIntent().getExtras().getParcelable("data");
 yourImageViewId.setImageBitmap(receiptimage);

希望能帮助到你

于 2012-07-21T09:08:55.530 回答
0

Bitmap实现Parcelable接口。所以要通过它使用

intent.putExtra("bitmap", bitmap);

并检索它使用:

Bitmap bitmap = (Bitmap) intent.getParcelableExtra("bitmap");

并使用ImageView.setImageBitmap()

编辑:见从其他应用程序接收内容

于 2012-07-21T09:24:46.863 回答