surfaceCreated
surfaceChanged
surfaceDestroyed
일반적으로 surfaceCreated 가 호출되면 holder 를 이용해서 작업을 시작하고 surfacedDestroyed 가 호출되면 holder 작업을 멈추게 된다.
레이아웃 xml 에 SurfaceView 를 지정한 경우 기본적으로 activity 가 시작되는 시점 또는 onPause 후 onResume 시점에 surfaceCreate 와 surfaceChanged 가 발생한다.
그리고 onPause 되는 시점에 surfacedDestroyed 가 발생한다.
만약 Activity 를 나갔다 들어오지 않는 상태에서 SurfaceView 를 다시 사용해야 한다면 surfaceView 의 setVisibility 함수를 이용하는 방법이 있다.
SurfaceView 를 사용하지 않는 시점에 SurfaceView 의 visibility 를 View.GONE 또는 View.INVISIBLE 로 지정하면 surfaceDestroyed 가 호출된다.
그리고 SurfaceView 를 다시 사용하는 시점에 SurfaceView 의 visibility 를 View.VISIBLE 로 지정하면 surfacedCreated 와 surfaceChaned 함수가 호출된다.
댓글 없음:
댓글 쓰기