SurfaceView에서 callback이 최초실행 될때가 Surface가 준비가 완료됐을때가 맞나요?
제가
SurfaceHolder holder = getHolder();
후에
Canvas c = holder.lockCanvas(null);
에서 c가 어플시작하고 2.5초 가량 null 이 뜨네요..
원인을 계속 못찾고 있네요.. 혹시 이런 경험 해보신분 도움 부탁드립니다.
해결되면 자답 달게요! 감사합니다.
자답입니다. 항상 못찾다가 질문을 올리면 찾는지..ㅠㅠ
제가 이해를 잘못했네요..
콜백은 surfaceChanged, surfaceCreated, surfaceDestroyed의 콜백이고..
스레드를 별도로 돌려서 holder를 통해서 canvas를 얻어 반복적으로 그리는것이엇네요..
SurfaceView 생성자에서 스레드를 돌렸더니 run 구문에 있던 synchronized에서 holder를 잡고있어서 생한 딜리에인것 같습니다.(뻘쭘....)
surfaceCreated에서 Thread.start()를 통해 해결하였습니다.
로그인 유지
자답입니다. 항상 못찾다가 질문을 올리면 찾는지..ㅠㅠ
제가 이해를 잘못했네요..
콜백은 surfaceChanged, surfaceCreated, surfaceDestroyed의 콜백이고..
스레드를 별도로 돌려서 holder를 통해서 canvas를 얻어 반복적으로 그리는것이엇네요..
SurfaceView 생성자에서 스레드를 돌렸더니 run 구문에 있던 synchronized에서 holder를 잡고있어서 생한 딜리에인것 같습니다.(뻘쭘....)
surfaceCreated에서 Thread.start()를 통해 해결하였습니다.