recycleView使用之2 :横向现实图片之图片是正方形
来源:互联网 发布:被掩埋的巨人 知乎 编辑:程序博客网 时间:2024/05/21 21:44
今天大神要求,recycleView的横向显示三张图片需要显示的是正方形的,因为前边已经贴出代码关于recyview的正常使用。
解决问题的猜想1 : 在现实的图片条目上想方法:将图片本身的宽高做成适配屏幕宽高,这样就不会因为屏幕的问题出现显示不一样的情况。
首先,就是自定义控件的onMeasure()方法的使用,这个方法可以定义控件的宽高等属性的。
import android.content.Context;import android.util.AttributeSet;import android.widget.RelativeLayout;public class MyRelativeView extends RelativeLayout { public MyRelativeView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public MyRelativeView(Context context, AttributeSet attrs) { super(context, attrs); } public MyRelativeView(Context context) { super(context); } @SuppressWarnings("unused") @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension(getDefaultSize(0, widthMeasureSpec), getDefaultSize(0, heightMeasureSpec)); int childWidthSize = getMeasuredWidth(); int childHeightSize = getMeasuredHeight(); heightMeasureSpec = widthMeasureSpec = MeasureSpec.makeMeasureSpec(childWidthSize, MeasureSpec.EXACTLY); super.onMeasure(widthMeasureSpec, heightMeasureSpec); }}
用他做根节点,里面放一个ImagView
<?xml version="1.0" encoding="utf-8"?><com.omi.utils.MyRelativeView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/dialogshape"> <ImageView android:id="@+id/image_compile_recycle" android:layout_width="match_parent" android:layout_height="match_parent" /></com.omi.utils.MyRelativeView>加载图片的时候,整个图片是正方形了,可是如果图片本身就是不规则的或者就是长方形的,怎么办?
继续猜想,拉伸整个item条目?不能,整个图片宽高已经是填充满item的屏幕了。
参考了一个前辈的方法:
http://blog.csdn.net/chen825919148/article/details/8845889
里面很详细:
Android:scaleType="CENTER" 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
CENTER_CROP 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
CENTER_INSIDE 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
FIT_CENTER 把图片按比例扩大/缩小到View的宽度,居中显示
IT_START, FIT_END在图片缩放效果上与FIT_CENTER一样,只是显示的位置不同,FIT_START是置于顶部,FIT_CENTER居 中,FIT_END置于底部。
FIT_XY 不按比例缩放图片,目标是把图片塞满整个View。
- recycleView使用之2 :横向现实图片之图片是正方形
- RecycleView设置横向滑动图片
- JS特效之连续不断横向滚动图片代码
- 安卓多线程编程系列2:异步任务的使用之使用异步任务带有进度的横向滚动条下载网络图片
- 使用高通Vuforia开发AR增强现实游戏之Single Image Target单一图片识别(一)
- RecycleView之使用心得【1】
- RecycleView之 DiffUtil的使用
- RecycleView使用glide显示图片,对图片进行缩放
- Gridview图片正方形
- 正方形图片切成圆形
- 使用jquery现实图片切换效果
- Android之---RecycleView实现简单的图片查看功能(类似相册查看器)
- iOS之图片的使用
- 图片加载之Glide使用
- 图片加载之Picasso使用
- volley使用之图片加载
- Android高效现实图片问题2
- 图片无缝滚动(横向)
- 521 Longest Uncommon Subsequence I
- 腾讯前端十日训练营day2
- 数据结构——二叉查找树
- 本地环境phpStorm10+XDebug配置和断点调试
- 判定Java源文件名称(Java)acm.sdut
- recycleView使用之2 :横向现实图片之图片是正方形
- netcat
- Java7特性
- python基础之循环语句
- LiteOrm的使用
- 【LeetCode】557 Reverse Words in a String III
- 坚持#第165天~找回激情
- Python+Selenium中级篇之8-Python自定义封装一个简单的Log类
- Ubuntu下QT的安装详细教程