Android 实现按照图片宽高改变imageview的宽高。
来源:互联网 发布:看新闻的软件 编辑:程序博客网 时间:2024/05/01 16:57
/**
* 自适应图片的ImageView
*
* @param context 上下文对象
* @param image imageveiw 对象
* @param bitmap 参数
*/
public static void setImageViewMathParent(Context context,
ImageView image, Bitmap bitmap) {
//获得ImageView的参数类 ViewGroup.LayoutParams vgl = image.getLayoutParams(); if (bitmap == null) { return; } //获取bitmap的宽度 float bitWidth = bitmap.getWidth(); //获取bitmap的宽度 float bithight = bitmap.getHeight(); //计算出图片的宽高比,然后按照图片的比列去缩放图片 float bitScalew = bitWidth / bithight; //如果是图片的宽大于高 则采用屏幕的五分之三设置图片的宽 高按照比例计算 float imgWidth = DeviceUtils.getScreenWith(context) * 3 / 5; //如果是图片的高大于宽 则采用屏幕的三分之一设置图片的高 宽按照比例计算 float imgHight = DeviceUtils.getScreenHeight(context) * 1 / 3; //如果图片宽度大于高度 if (bitWidth > bithight) { vgl.width = (int) imgWidth; vgl.height = (int) (imgWidth / bitScalew); } else { //当图片的高度大于宽度的 vgl.width = (int) (imgHight * bitScalew); vgl.height = (int) imgHight; } //设置图片充满ImageView控件 image.setScaleType(ImageView.ScaleType.CENTER_CROP); //等比例缩放 image.setAdjustViewBounds(true); image.setLayoutParams(vgl); image.setImageBitmap(bitmap);}
//下面是获取屏幕宽度和高度的方法,最好放在跟屏幕相关的工具类
public static int getScreenWith(Context context) { WindowManager manager = (WindowManager) context .getSystemService(Context.WINDOW_SERVICE); Display display = manager.getDefaultDisplay(); return display.getWidth();}public static int getScreenHeight(Context context) { WindowManager manager = (WindowManager) context .getSystemService(Context.WINDOW_SERVICE); Display display = manager.getDefaultDisplay(); return display.getHeight();}
由于时间匆忙,没有时间写demo。用法比较简单。传入相应的参数即可。
如果是网络图片的话需要可以用
Bitmap bitmap=ImageLoader.getInstance().loadImageSync(url);
至于怎么转换bitmap对象网上有很多列子 ,可以自己查找
0 0
- Android 实现按照图片宽高改变imageview的宽高。
- Android ImageView动态图片自适应宽高
- Android 实现自定义宽高比的ImageView
- Android 实现自定义宽高比的ImageView
- Android 设置ImageView 宽高
- 自定义按照图片宽高比例缩放的RadioLayout
- 根据图片的宽高比例设置imageView 的size
- 获取imageView 的宽高
- imageview获取宽高
- android的ImageView 充满控件,并且保持宽高比
- Android中动态调整ImageView的宽高比
- Android Imageview控制它的宽高比例属性详解
- android获取ImageView的宽高为0?
- 设置ImageView的位置和宽高
- 如何设置imageView的高和宽?
- ImageView宽高的设置与获取
- 等比例宽高的ImageView
- android 修改图片的宽高
- java 解压zip中文文件 出现错误
- 【HTTP1.1中文手册】
- 转载:哈希表
- SVN-Permission denied
- 数据类型
- Android 实现按照图片宽高改变imageview的宽高。
- Spring注入遇见的问题
- CSS3-响应式布局
- 一款漂亮的轻量级bootstrap中文后台管理系统模版
- eclipse使用和优化配置
- MySQL查询数据表中数据记录(包括多表查询)
- CodeForces 599BSpongebob and Joke
- [HDU2458] Kindergarten [2008 Asia Hefei Regional Contest Online C]
- NYOJ 16 矩形嵌套 [DP]