Activity.onCreate执行
SurfaceView创建SurfaceHolder,创建Surface
同时执行SurfaceHolder.Callback.surfaceCreated和SurfaceHolder.Callback.surfaceChanged
注意了,首次创建Surface,是会同时执行两个回调的
SurfaceView大小发生变化,或发生横竖屏切换
执行SurfaceHolder.Callback.surfaceChanged
Activity.onPause执行
销毁Surface,保持SurfaceHolder不变
执行SurfaceHolder.Callback.surfaceDestroyed
Activity从paused状态恢复,执行Activity.onResume
创建新的Surface,保持SurfaceHolder不变
同时执行SurfaceHolder.Callback.surfaceCreated和SurfaceHolder.Callback.surfaceChanged
应用场景
在用SurfaceView进行摄像头预览时,onPause之后再返回,预览就会停止,需要手动再次开启
Surface在创建时,会同时执行surfaceCreated和surfaceChanged回调,所以注意不要重复执行某些代码