- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要根据当前屏幕方向缩放图像。如果屏幕是 LANDSCAPE 并且图像是 LANDSCAPE 则将其缩放到 FIT_XY。否则,如果图像是 PORTRAIT,则将其缩放到 FIT_CENTER。对于纵向屏幕方向,反之亦然。
这是我到目前为止所做的:
Glide.with(getContext())
.asBitmap()
.load(displayedImageFile)
.transition(BitmapTransitionOptions.withCrossFade(1000))
.into(new SimpleTarget<Bitmap>()
{
@Override
public void onResourceReady(Bitmap bitmap, Transition<? super Bitmap> transition)
{
int imgOrt = (bitmap.getWidth() >= bitmap.getHeight()) ? Configuration.ORIENTATION_LANDSCAPE : Configuration.ORIENTATION_PORTRAIT;
switch (screenOrientation)
{
case Configuration.ORIENTATION_PORTRAIT:
if (imgOrt == Configuration.ORIENTATION_PORTRAIT)
imageview.setScaleType(ImageView.ScaleType.FIT_XY);
else
imageview.setScaleType(ImageView.ScaleType.FIT_CENTER);
break;
case Configuration.ORIENTATION_LANDSCAPE:
if (imgOrt == Configuration.ORIENTATION_LANDSCAPE)
imageview.setScaleType(ImageView.ScaleType.FIT_XY);
else
imageview.setScaleType(ImageView.ScaleType.FIT_CENTER);
break;
}
imageview.setImageBitmap(bitmap);
}
});
知道为什么 withCrossFade()
不起作用吗?我是 Glide 的新手。其实昨天才开始用Glide。如果事情很简单,我深表歉意,但我无法解决我的代码有什么问题。
我唯一怀疑的是当我使用 imageview.setImageBitmap(bitmap);
时动画不起作用?知道如何克服这个问题吗?
最佳答案
有这个问题,使用 Glide 4.8.0(哦,还有 Kotlin,很容易翻译成 java)通过以下方式解决了它:
Glide.with(context)
.asBitmap()
.load(Uri.fromFile(bitmapFile))
.transition(BitmapTransitionOptions.withCrossFade())
.apply(RequestOptions().diskCacheStrategy(DiskCacheStrategy.ALL).centerCrop())
.into(object: CustomViewTarget<ImageView, Bitmap>(imageView) {
override fun onLoadFailed(errorDrawable: Drawable?) {}
override fun onResourceCleared(placeholder: Drawable?) {
imageView.setImageDrawable(placeholder)
}
override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
transition?.let {
val didSucceedTransition = transition.transition(resource, BitmapImageViewTarget(imageView))
if(!didSucceedTransition) imageView.setImageBitmap(resource)
}
}
})
关于android - 使用 SimpleTarget 时的 Glide Transition (withCrossFade),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51168381/
自 Glide 早期更新以来,SimpleTarget 已被弃用 Glide.with(getActivity()) .load(uri) .asBitmap()
我正在使用 Glide 加载图像、调整图像大小并通过 SimpleTarget 将其保存到文件中.这些图像将上传到 Amazon S3,但这不是重点。我在上传之前调整图像大小,以尽可能多地节省用户的带
我需要根据当前屏幕方向缩放图像。如果屏幕是 LANDSCAPE 并且图像是 LANDSCAPE 则将其缩放到 FIT_XY。否则,如果图像是 PORTRAIT,则将其缩放到 FIT_CENTER。对于
我正在使用 Glide 使用 PagerAdapter 将图像加载到 ViewPager 中。当我使用以下方法加载图像时: Glide.with(mContext).load(mImage).plac
我是一名优秀的程序员,十分优秀!