Какой метод Activity вызывается после всех методов макета? - PullRequest
19 голосов
/ 19 сентября 2011

Мне нужно что-то сделать в Activity после того, как все методы макета были вызваны, все View на месте и Activity готов к отображению.

Какой методможет это сделать?

Ответы [ 2 ]

39 голосов
/ 20 сентября 2011

Если вы пытаетесь получить ширину вида или что-то в этом роде.Это должно работать

Добавить это в onCreate вашей деятельности

ViewTreeObserver vto = layout.getViewTreeObserver(); 
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { 
    @Override 
    public void onGlobalLayout() { 
        // Put your code here. 

        layout.getViewTreeObserver().removeOnGlobalLayoutListener(this); 
    } 
}); 
1 голос
/ 19 сентября 2011

Для этого AFAIK нет магического метода. Предложите добавить Handler к вашему классу активности и post() a Runnable к нему из onCreate(), который содержит код, который вы хотите запустить.

Если это еще слишком рано, вы можете вместо этого postDelayed().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...