And*_*ins 4 android android-glide
我正在尝试使用Glide在Listview中加载一些图像.如果我在加载图像时不使用占位符,则图像会正确加载.但是,当我尝试设置占位符时,我通过网络加载的图像显示为拉伸.这仅在使用占位符图像的情况下发生.如果我要离开屏幕并返回(这样就不会加载占位符图像),那么图像就会正确显示.
这是我简单的Glide实现:
Glide.with(context)
.load(url)
.placeholder(R.drawable.empty_logo)
.error(R.drawable.error)
.into(imageView);
Run Code Online (Sandbox Code Playgroud)
我知道我很晚才回答,但这就是它对我的帮助:
Glide.with(context).load(url).placeholder(R.drawable.empty_logo).dontAnimate().into(imageView);
Run Code Online (Sandbox Code Playgroud)
使用dontAnimate(),它对我有用.希望它有帮助:)
我遇到了同样的问题,如果占位符小于所获取的图像,则图像在加载到 ImageView 时将被拉伸。我尝试了我能想到的一切,以下内容对我来说非常有效:
我在 ImageView 上设置了以下属性:
<ImageView
android:id="@+id/my_image_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"/>
Run Code Online (Sandbox Code Playgroud)
并按以下方式使用 Glide:
Glide.with(myImageView.getContext())
.load(imageUrl)
.placeholder(R.drawable.placeholder)
.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)
.into(myImageView);
Run Code Online (Sandbox Code Playgroud)
这里要注意的关键是将 ImageView 上的adjustmentViewBounds属性设置为 true,最重要的是.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL) - 这将强制 Glide 使用图像的原始大小。
您还可以在.override()中指定像素大小,但请确保为 ImageView 指定正确的 ScaleType,否则它也会拉伸图像。
| 归档时间: |
|
| 查看次数: |
1971 次 |
| 最近记录: |