以编程方式获取Android中LinearLayout或RelativeLayout的高度

以编程方式获取Android中LinearLayout或RelativeLayout的高度,android,android-layout,layout,Android,Android Layout,Layout,我需要在Android中以编程方式获得LinearLayout或RelativeLayout的长度,就像我有一个LinearLayout,如下所示 <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" > 我需要通过计算屏幕高度来增加位于屏幕中间的布局的高度,并通过计算屏幕高度来增加或减少布局的高度。因此,有一种方法可以计

我需要在Android中以编程方式获得LinearLayout或RelativeLayout的长度,就像我有一个LinearLayout,如下所示

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" > 


我需要通过计算屏幕高度来增加位于屏幕中间的布局的高度,并通过计算屏幕高度来增加或减少布局的高度。因此,有一种方法可以计算高度设置为“包裹内容”的布局的高度。我试图从布局参数中获取高度,但它给出的值是-1或-2,而不是以像素或密度像素表示的高度。

当然,match\u parent和wrap\u content等于-1和-2

在这种情况下,请尝试使用viewTreeObserver


这里有一个很好的链接:

当然,match\u parent和wrap\u内容等于-1和-2

在这种情况下,请尝试使用viewTreeObserver


这里有一个很好的链接:

当然,match\u parent和wrap\u内容等于-1和-2

在这种情况下,请尝试使用viewTreeObserver


这里有一个很好的链接:

当然,match\u parent和wrap\u内容等于-1和-2

在这种情况下,请尝试使用viewTreeObserver

这里有一个很好的链接:

请尝试以下操作:

myLayoutRef.post(new Runnable() {
    int height = myLayoutRef.getHeight;
});
此runnable在布局在屏幕上绘制和布局后运行,因此get height返回实际高度,而不是0。请尝试以下操作:

myLayoutRef.post(new Runnable() {
    int height = myLayoutRef.getHeight;
});
此runnable在布局在屏幕上绘制和布局后运行,因此get height返回实际高度,而不是0。请尝试以下操作:

myLayoutRef.post(new Runnable() {
    int height = myLayoutRef.getHeight;
});
此runnable在布局在屏幕上绘制和布局后运行,因此get height返回实际高度,而不是0。请尝试以下操作:

myLayoutRef.post(new Runnable() {
    int height = myLayoutRef.getHeight;
});

这个runnable在您的布局在屏幕上绘制和布局后运行,因此get height返回实际高度,而不是0

您可以,但我不会这样做。Android有办法在你没有真正工作的情况下处理这个问题。线性布局权重、相对布局对齐/规则等。我使用滚动视图,因此无法在滚动视图中对齐和权重。所以,若你们现在看到任何能得到版面高度的东西,若它的高度被设置为wrap_content或match_parrent,你们可以,但这不是我想要做的。Android有办法在你没有真正工作的情况下处理这个问题。线性布局权重、相对布局对齐/规则等。我使用滚动视图,因此无法在滚动视图中对齐和权重。所以,若你们现在看到任何能得到版面高度的东西,若它的高度被设置为wrap_content或match_parrent,你们可以,但这不是我想要做的。Android有办法在你没有真正工作的情况下处理这个问题。线性布局权重、相对布局对齐/规则等。我使用滚动视图,因此无法在滚动视图中对齐和权重。所以,若你们现在看到任何能得到版面高度的东西,若它的高度被设置为wrap_content或match_parrent,你们可以,但这不是我想要做的。Android有办法在你没有真正工作的情况下处理这个问题。线性布局权重、相对布局对齐/规则等。我使用滚动视图,因此无法在滚动视图中对齐和权重。所以,若你们现在看到任何东西,若它的高度被设置为“包裹内容”或“匹配内容”,那个么它就得到了版面的高度