Android - reacting after initial layout

前端 未结 2 957
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-13 15:48

This question has been asked several times in various forms but I haven\'t found a definitive answer.

I need to be able to get dimensions and positions of descendant

2条回答
  •  梦毁少年i
    2021-01-13 16:42

    I've been successful using the OnGlobalLayoutListener.

    It worked great on my Nexus S

    final LinearLayout marker = (LinearLayout) findViewById(R.id.distance_marker);
    OnGlobalLayoutListener listener = new OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
            //some code using marker.getHeight(), etc.
            markersContainer.getViewTreeObserver().removeGlobalOnLayoutListener(this);
        }
    };
    marker.getViewTreeObserver().addOnGlobalLayoutListener(listener);
    

提交回复
热议问题