Android RecyclerView 列表加载图片宽高适配
Posted 早起的年轻人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android RecyclerView 列表加载图片宽高适配相关的知识,希望对你有一定的参考价值。
图片的宽度为手机屏幕宽度,高度自适应
adapter item布局
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:adjustViewBounds="true"/>
Android里ImageView的ScaleType属性,这个属性决定了一张图片如何显示在ImageView上,常用的值有以下几个:CENTER,CENTER_CROP,CENTER_INSIDE,FIT_CENTER,FIT_END,FIT_START,FIT_XY,MATRIX。
这里使用的是FIT_XY,就是图片会填充 ImageView 的宽高,会出现拉伸与压缩现象,在这里设置 高度为自适应,属性 adjustViewBounds 为 true ,则会形成 ImageView 与 图片的宽高一至的样式效果
在Java 代码中动态设置也是一种方法
//获取屏幕像素对象实例
DisplayMetrics displayMetrics = context.getResources().getDisplayMetrics();
//宽度
int widthPixels = displayMetrics.widthPixels;
ViewGroup.LayoutParams lp = ivImg.getLayoutParams();
lp.height = ViewGroup.LayoutParams.WRAP_CONTENT;
lp.width = widthPixels;
ivImg.setLayoutParams(lp);
//这里设置图片最大的高度与宽度适配
ivImg.setMaxWidth(widthPixels);
ivImg.setMaxHeight(widthPixels * 2);
以上是关于Android RecyclerView 列表加载图片宽高适配的主要内容,如果未能解决你的问题,请参考以下文章
基于Android官方AsyncListUtil优化改进RecyclerView分页加载机制
在 android 上加载 HTML 内容列表的最佳方式可能是啥?
Android Paging 3 在 invalidate() 上清除 recyclerview