저는 안드로이드 개발에 초보자 며, 게임을 조금 만들려고합니다. 내 GameView
서브 클래스 SurfaceView
의 생성자에 의해 처음으로 CountDownTimer
을 만들었습니다. 나는 다음 수준에 통과하기 위해 무엇을해야실행 방법 내에 새로운 CountDownTimer를 시작하십시오.
은의 CountDownTimer class
의 cancel()
를 호출 다음 레벨의 모든 요소를 readapting 다시 새로운 CountDownTimer
을 만드는 것입니다. 나는 Runnable
을 구현하는 내 GameView
클래스의 run()
클래스에서이 작업을 수행하고 있습니다.
저는 온라인에서 기사를 읽었지만, 대부분의 솔루션은 Activities
을 사용하고 있습니다. 제가 말했듯이, SurfaceView
의 하위 클래스에서 일하고 있습니다.
이 내가
E/AndroidRuntime: FATAL EXCEPTION: Thread-4
Process: com.example.lucadigiammarino.biogame, PID: 3569
java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
at android.os.Handler.<init>(Handler.java:200)
at android.os.Handler.<init>(Handler.java:114)
at android.os.CountDownTimer$1.<init>(CountDownTimer.java:114)
at android.os.CountDownTimer.<init>(CountDownTimer.java:114)
at com.example.lucadigiammarino.biogame.GameCountDownTimer.<init>(GameCountDownTimer.java:0)
at com.example.lucadigiammarino.biogame.GameView.startTimer(GameView.java:135)
at com.example.lucadigiammarino.biogame.GameView.run(GameView.java:306)
at java.lang.Thread.run(Thread.java:761)
가 @Roman에
주 스레드가 아닌 UI를 다루는 일부 기능을 실행 해보십시오. – phnmnn
http://stackoverflow.com/questions/11086129/runonuithread-inside-a-view –