资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Android笔记:测量控件宽高和动态设置控件宽高

1.测算控件宽高

成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的深泽网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

 初始化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.动态修改控件的宽高

  比如,将p_w_picpathview的宽度改为200,高度改为宽度的3/4。其中RelativeLayout是p_w_picpathview的父布局,方法如下:

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 ;
p_w_picpathView.setLayoutParams(sp_params);

参考资料:http://www.linuxidc.com/Linux/2011-09/43132p2.htm,


本文名称:Android笔记:测量控件宽高和动态设置控件宽高
链接分享:http://cdkjz.cn/article/ggehed.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220