如何在Android中以编程方式获取相对-线性布局的宽度和高度? [英] How to get programmatically width and height of Relative - Linear layout in android?

查看:91
本文介绍了如何在Android中以编程方式获取相对-线性布局的宽度和高度?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要相对/线性布局的运行时尺寸.

I required runtime dimensions of Relative/Linear Layout.

activity_home.xml :

<RelativeLayout
    android:id="@+id/rlParent"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
</RelativeLayout>

HomeActivity.java:

HomeActivity.java:

private int width, height;

RelativeLayout rlParent = (RelativeLayout) findViewById(R.id.rlParent);

w = rlParent.getWidth();
h = rlParent.getHeight();

Log.i("Width-Height", width+"-"+height);

请分享您的想法.

推荐答案

我已经通过这种方式实现了:

Well I have implemented by this way:

LinearLayout linearLayout = (LinearLayout)findViewById(R.id.layout);
ViewTreeObserver viewTreeObserver = linearLayout.getViewTreeObserver(); 
viewTreeObserver.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { 
    @Override 
    public void onGlobalLayout() { 
        linearLayout.getViewTreeObserver().removeGlobalOnLayoutListener(this); 
        int width  = linearLayout.getMeasuredWidth();
        int height = linearLayout.getMeasuredHeight(); 

    } 
});

此示例用于线性布局,对于相对布局,请遵循相同的过程.

This example is for Linear layout, for Relative layout follow same process.

希望这会对您有所帮助.

Hope this would help you.

这篇关于如何在Android中以编程方式获取相对-线性布局的宽度和高度?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆