根据屏幕的尺寸决定图片的显示大小
来源:互联网 发布:淘宝网新款凉鞋罗马鞋 编辑:程序博客网 时间:2024/05/12 17:33
在app中我们一般都会下载图片,那么我们如何决定图片的大小呢,给图片固定一样的高度、宽度是不合理的,那么我们需要根据屏幕的尺寸来决定图片的大小。
首先,我们需要计算屏幕尺寸,我们可以写一个工具类,用的时候直接调用。
public class ImageSizeUtil { public static SharePreferenceUtil spUtil; public static void getScreenSize(Context context) { WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); int width = windowManager.getDefaultDisplay().getWidth(); int height = windowManager.getDefaultDisplay().getHeight(); if (spUtil == null) { spUtil = new SharePreferenceUtil(context); } spUtil.put(ConfigConts.ScreenWidth, width); spUtil.put(ConfigConts.ScreenHight, height); } /** * @param context * @return 图片的宽是屏幕宽的三分之一 */ public static int setImageWidth(Context context, int i) { if (spUtil == null) { getScreenSize(context); } int imageWidth = spUtil.getInt(ConfigConts.ScreenWidth, 0); return imageWidth / i; } /** * @param * @return 根据图片的高是图片的宽的2/3 */ public static int setImageHight(int width) { return (width * 2) / 3; } /** * @param * @return 根据图片的宽和高一致 */ public static int setImageHightSampleWidth(int width) { return width; }}
在adapter中或者需要的地方调用
public MainGrideAdapter(Context context, List<GoodsBean> mData) { this.mData = mData; this.context = context; //设置图片的大小 itemWidth = ImageSizeUtil.setImageWidth(context, 2);// imgParams = new RelativeLayout.LayoutParams(imageWidth, ImageSizeUtil.setImageHight(imageWidth)); }holder.mFirmOrderItemDestImg.setLayoutParams(new RelativeLayout.LayoutParams(imgWidth, imgWidth));
这样就可以根据屏幕尺寸设置图片大小了!
图片工具类
SharePreferenceUtil
大家有需要的可以自己下载!
1 0
- 根据屏幕的尺寸决定图片的显示大小
- ImageView根据屏幕大小动态设置图片的尺寸
- 根据屏幕大小设置显示图片的大小(二)
- 根据屏幕大小显示不同的字
- 获取屏幕的大小尺寸
- iOS超出屏幕的尺寸的图片按比例缩放显示
- 根据屏幕大小显示不同的layout下的界面
- Android 根据屏幕的宽度来设置图片的大小,
- UEditor控制上传图片的显示尺寸大小
- HTML获取屏幕、浏览器的尺寸大小
- 如何得到屏幕和可用显示区域的大小尺寸及运用分辨率无关的编程
- 分针网—IT教育: 根据屏幕大小,加载不同大小的图片
- 限制图片显示的尺寸
- 解决图片尺寸大于屏幕尺寸时,压缩图片显示最前面的图片
- 提前获取图片的尺寸,并使得图片能根据控件的大小按比例缩放,防止内存溢出
- 根据屏幕的高度宽度,调整大小
- 根据屏幕大小变化的轮播器
- 获得图片文件的图像尺寸大小
- 详解Activity生命周期(Lesson 4 - 重新创建销毁的activity)
- 整数划分问题——POJ放苹果问题
- 传统线程同步wait(),notify,notifyall()
- DrawerLayout和NavigationView使用详解
- 单例模式探究
- 根据屏幕的尺寸决定图片的显示大小
- 中文在线-微书房客户端
- CCNA知识点2之TCP/IP简介
- 华为机试在线训练-牛客网(32)成绩排序
- java面向对象的特点
- 《纳什均衡与博弈论》
- Socket编程一实现简易的聊天功能以及文件传输
- Hive安装配置使用及java api调用
- ueditor 整合 springmvc