在我的应用程序中,我在布局中添加了许多具有以下属性的 View ,我该如何在运行时获得正确的布局高度
LinearLayout ll = new LinearLayout(this);
ll.setLayoutParams(new LayoutParams(840,LayoutParams.WRAP_CONTENT));
ll.setOrientation(LinearLayout.VERTICAL);
ll.addView(view1);
ll.addView(view2);
ll.getHeight();
此时如何获得布局的高度考虑添加 view1 和 view2 ,而不考虑我的属性(LayoutParams.WRAP_CONTENT),因为它总是返回 0 给我?
最佳答案
尝试这种方式,希望这能帮助您解决问题。
int width;
int height;
ll.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
width = view.getMeasuredWidth();
height = view.getMeasuredHeight();
}
});
关于android - 动态获取布局的高度和宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24710938/