无法使用uri

时间:2016-07-12 16:01:40

标签: android android-intent android-activity android-imageview android-glide

我正在开发一个App,我正在收听图像共享请求。

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

我能够分享图像的Uri。

private ArrayList<Uri> mGalleryImagesList;

if(recievedAction == Intent.ACTION_SEND){  
    mSelectedImages.add(Uri.parse(extras.get(Intent.EXTRA_STREAM).toString()));
}
else if(recievedAction == Intent.ACTION_SEND_MULTIPLE){
    ArrayList<Parcelable> fileList = getIntent().getParcelableArrayListExtra(Intent.EXTRA_STREAM);

    for (Parcelable file: fileList) {
        mSelectedImages.add(Uri.parse(file.toString()));
    }
}

但是,当我尝试使用Glide加载ImageView时,它没有加载,我只看到占位符。

...

@Override
public void onBindViewHolder(ViewHolder holder, final int position) {
    Glide.with (mContext)
            .load(mGalleryImagesList.get(position))
            .centerCrop()
            .placeholder(R.drawable.image_loading)
            .crossFade()
            .into(holder.imgAlbum);
}

我使用&#34;照片&#34;分享照片时获得的Uri示例应用到我的应用程序。     内容://com.google.android.apps.photos.contentprovider/-1/1/content%3A%2F%2Fmedia%2Fexternal%2Ffile%2F3924/ORIGINAL/NONE/1472614544

没有例外,唯一的问题是,ImageView未加载。

1 个答案:

答案 0 :(得分:0)

图片可能太大,请尝试调整大小。

Glide.with (mContext)
        .load(mGalleryImagesList.get(position))
        .centerCrop()
        .placeholder(R.drawable.image_loading)
        .resize(holder.imgAlbum.getLayoutParams().width, holder.imgAlbum.getLayoutParams().height)
        .crossFade()
        .into(holder.imgAlbum);