获取约束布局中子布局的高度和宽度

时间:2018-09-05 15:22:51

标签: android android-constraintlayout

我有一个约束布局,其中有一个子布局(frame_layout)。使用match_constraint将宽度和高度设置为0dp。一旦在屏幕上加载了布局,我们如何获得这个frame_layout的高度和宽度?使用layoutparams给出0dp。 getWidth或getHeight再次给出0dp。

1 个答案:

答案 0 :(得分:1)

final FrameLayout layout = (FrameLayout) findViewById(R.id.YOUR_VIEW_ID);
ViewTreeObserver vto = layout.getViewTreeObserver(); 
vto.addOnGlobalLayoutListener (new OnGlobalLayoutListener() { 
    @Override 
    public void onGlobalLayout() {
        layout.getViewTreeObserver().removeOnGlobalLayoutListener(this); 
        int width  = layout.getMeasuredWidth();
        int height = layout.getMeasuredHeight(); 

    } 
});