我正在使用Glide 3.6.0从网上加载图片。 它适用于99%的时间,但有时它会以非常低的分辨率显示图像。
以下是其中一个案例。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_gravity="center_vertical"
android:layout_toRightOf="@id/third_item_image_view"
android:layout_alignBottom="@id/third_item_image_view"
android:orientation="vertical">
<ImageView
android:id="@+id/first_item_image_view"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:adjustViewBounds="true"
android:padding="@dimen/d0_half"
android:scaleType="fitXY"/>
<ImageView
android:id="@+id/second_item_image_view"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:adjustViewBounds="true"
android:padding="@dimen/d0_half"
android:scaleType="fitXY"/>
</LinearLayout>
以这种方式在XML中声明:
ImgeView
Glide.with(context)
.load(imageUrl)
.placeholder(new ColorDrawable(image.getAverageColor()))
.error(R.drawable.image_error)
.fitCenter()
.into(imageView);
都有同样的问题。
以下是我加载图片的方式:
SimpleTarget
非常简单。
我使用ImageView
代替Glide.with(context)
.load(imageUrl)
.placeholder(new ColorDrawable(image.getAverageColor()))
.error(R.drawable.image_error)
.fitCenter()
.into(new SimpleTarget<GlideDrawable>() {
@Override
public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
imageView.setImageDrawable(resource.getCurrent());
}
});
ImageView
完全相同的代码,除了我如何将图像分配给String
。
我的问题是有什么区别?为什么Glide仅在第二种情况下才能正常工作?