【发布时间】:2017-07-10 21:36:02
【问题描述】:
我最近将 Glide 升级到版本 4,这导致我在浮动操作按钮中显示的图像出现问题。我尝试了 2 种方法,并且对这两种方法都使用了相同的 XML:
XML:
<android.support.design.widget.FloatingActionButton
android:id="@+id/profilepic_fab"
android:layout_width="150dp"
android:layout_height="150dp"
android:scaleType="center"
app:layout_anchor="@id/appbar"
app:layout_anchorGravity="bottom|center_horizontal"
app:srcCompat="@mipmap/bookmark_checked_white" />
方法#1:
RequestOptions optionsCentre = new RequestOptions()
.placeholder(R.drawable.profilepic_placeholder)
error(R.drawable.profilepic_placeholder).dontTransform()
.dontAnimate().CircleCrop();
Glide.with(context)
.load(userinfo.getprofilePic())
.apply(optionsCentre)
.into(profilepic);
方法 #1 的结果:在 Android 7.1.2 上看起来不错,但在 4.4 上看起来像下图:
方法#2:
RequestOptions options = new RequestOptions()
.fitCenter()
.placeholder(R.drawable.profilepic_placeholder)
.error(R.drawable.profilepic_placeholder)
.priority(Priority.HIGH);
Glide.with(context)
.asBitmap()
.apply(options)
.load(url)
.into(new BitmapImageViewTarget(fab) {
@Override
protected void setResource(Bitmap resource) {
RoundedBitmapDrawable circularBitmapDrawable =
RoundedBitmapDrawableFactory.create(context.getResources(), resource);
circularBitmapDrawable.setCircular(true);
fab.setImageDrawable(circularBitmapDrawable);
}
});
方法 #2 的结果:结果在 Android 7.1.2 和 4.4 上看起来不同
Android 7.1.2:
Android 4.4:
方法 #2 是用于 Glide v3 的方法...任何帮助将不胜感激!
【问题讨论】:
标签: android android-view floating-action-button android-glide