Получить высоту и ширину дочернего макета в контрастном виде - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть макет ограничения, в котором есть дочерний макет (frame_layout). Ширина и высота устанавливаются как 0dp с match_constraint. Как мы можем получить высоту и ширину этого frame_layout после загрузки макета на экран? Использование layoutparams дает 0dp. getWidth или getHeight снова дают 0dp.

1 Ответ

0 голосов
/ 05 сентября 2018
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(); 

    } 
});
...