有时我们在onCreate或者onStart中获取控件的高度时获取的都是0,因为控件还没有初始化完毕。
android给开发者提供了一个方法,可以解决这个问题,这个方法就是onWindowFocusChanged()
相关执行打印:
1: entry: onStart---->onResume---->onAttachedToWindow----------->onWindowVisibilityChanged--visibility=0---------->onWindowFocusChanged(true)------->2. exit: onPause---->onStop---->onWindowFocusChanged(false) ---------------------- (lockscreen)
3. exit : onPause----->onWindowFocusChanged(false)-------->onWindowVisibilityChanged--visibility=8------------>onStop(to another activity)
原文: