【笔记】根据屏幕的宽度动态设置image宽高
2016-04-11 18:12
411 查看
重点:需要给你的ImageView布局加上
android:adjustViewBounds=”true”
android:scaleType=”fitXY”
代码中:
int screenWidth = getScreenWidth(this);
ViewGroup.LayoutParams lp = iv_code.getLayoutParams();
lp.width = screenWidth;
lp.height = screenWidth;
iv_code.setLayoutParams(lp);
iv_code.setMaxWidth(screenWidth);
iv_code.setMaxHeight(screenWidth * 5);
//获取屏幕的宽度
public static int getScreenWidth(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();
}
“`
android:adjustViewBounds=”true”
android:scaleType=”fitXY”
<ImageView android:id="@+id/iv_code" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="30dip" android:scaleType="fitXY" android:adjustViewBounds="true" android:layout_marginLeft="10dip" android:layout_marginRight="10dip" />```
代码中:
int screenWidth = getScreenWidth(this);
ViewGroup.LayoutParams lp = iv_code.getLayoutParams();
lp.width = screenWidth;
lp.height = screenWidth;
iv_code.setLayoutParams(lp);
iv_code.setMaxWidth(screenWidth);
iv_code.setMaxHeight(screenWidth * 5);
//获取屏幕的宽度
public static int getScreenWidth(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();
}
“`
相关文章推荐
- android布局之线性布局
- JavaMail邮件开发
- java native方法及JNI实例
- 高性能web服务容错机制
- 组合问题的java实践
- iOS获取设备容量
- 南阳题目218-Dinner
- VC++ 实现文件与应用程序关联
- HBase原理、设计与优化实践
- 染色配对
- 内存错误 未处理的异常: 0xC0000005: 读取位置 0x00000000 时发生访问冲突
- 微信公众号开发
- Standard_C_内存操作
- 预处理命令
- 【js】:js中对于两种控件不同的值得显示方法
- enum枚举定义转json
- FFmpeg 错误 C4996: "avcodec_alloc_frame"或者"av_free_packet"等函数被声明为已否决的解决方法
- 组合查询(机房重构知识点总结)
- access order by 判断是否除数为0
- 算法导论—插入排序及Matlab实现