Android笔记:测量控件宽高和动态设置控件宽高
2014-02-12 20:19
316 查看
1.测算控件宽高
初始化UI时,无法直接通过getWidth()或getHeight()获取到控件的宽度或高度。可采用定时测算去获取控件的宽度/高度,方法如下:
参考资料:http://blog.163.com/zhaolin53636848@126/blog/static/490866682012065373798/
2.动态修改控件的宽高
比如,将imageview的宽度改为200,高度改为宽度的3/4。其中RelativeLayout是imageview的父布局,方法如下:
参考资料:http://www.linuxidc.com/Linux/2011-09/43132p2.htm,
初始化UI时,无法直接通过getWidth()或getHeight()获取到控件的宽度或高度。可采用定时测算去获取控件的宽度/高度,方法如下:
//每隔10毫秒测算一次宽度,直到测算完毕 mMeasureAction = new Runnable() { @Override public void run() { if (mLayout_map.getWidth() != 0) { Log.i("w", mLayout_map.getWidth() + ""); Log.i("h", mLayout_map.getHeight() + ""); } else { mLayout_map.postDelayed(mMeasureAction, 10); } } }; mLayout_map.postDelayed(mMeasureAction, 10);
参考资料:http://blog.163.com/zhaolin53636848@126/blog/static/490866682012065373798/
2.动态修改控件的宽高
比如,将imageview的宽度改为200,高度改为宽度的3/4。其中RelativeLayout是imageview的父布局,方法如下:
import android.widget.RelativeLayout.LayoutParams;
int imgWeight = 200; RelativeLayout.LayoutParams sp_params = new RelativeLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); sp_params.width = imgWeight; sp_params.height = imgWeight * 3 /4 ; imageView.setLayoutParams(sp_params);
参考资料:http://www.linuxidc.com/Linux/2011-09/43132p2.htm,
相关文章推荐
- Android 动态设置控件宽高
- Android笔记(25)动态设置drawable中属性
- android 动态设置屏幕控件宽高度
- Android动态设置控件高度
- Android动态设置控件大小以及设定margin以及padding值
- android之动态设置控件高宽
- Android fragment 横竖屏的动态布局实现(不需要保存数据)动态的给控件设置权重
- android动态设置控件的大小和位置
- Android 组件动态设置宽高
- Android 动态设置控件获取焦点
- Android笔记之View未显示前获得控件宽高
- android动态设置控件的各种属性
- Android动态设置控件高度
- Android 开发,JAVA动态设置控件大小
- android代码中动态设置布局中控件的属性
- Android 动态设置控件获取焦点
- android 动态创建控件并设置布局
- Android动态设置控件高度
- Android动态设置控件高度
- Android动态设置控件等宽高