Wann macht Android zuerst das Layout?

Ich muss einige Objekte basierend auf dem anfänglichen Layout von Widgets und Ansichten in meiner Aktivität vorbereiten. Ich möchte es in den Initialisierungsschritten tun, idealerweise onCreate und onStart. In Anbetracht der Möglichkeit von Änderungen, die auftreten können, wenn wir nicht im Vordergrund sind, müssen einige davon möglicherweise in onResume vorgenommen werden.

Also überprüfte ich, ob ich messen konnte, wie meine Ansichten dargelegt worden waren.

Log.d("MyApp", "w,h of X is " + findViewById(R.id.X).getWidth() +
      "," + findViewById(R.id.X).getHeight());

Ich habe dies in onCreate, onStart und onResume ausgeführt. Jedes Mal bekomme ich 0,0 für Breite, Höhe. Wenn ich auf onTouchEvent warte, erhalte ich die Layoutinformationen, sodass das Layout bis dahin fertig ist.

Ich bin überrascht, dass das Layout noch nicht fertig ist, wenn ich es auf Resume sehe. Ich erwartete, dass die Widgets bereits angelegt und bereit waren, mit ihnen zu experimentieren.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage