0
Android에서 간단한 애니메이션을 만들고 싶습니다. I는 셋업이 가이드 시리즈를 기본 자바 코드 따랐다 위해Android에서 thread.sleep (long millis)이 작동하지 않습니다.
https://www.youtube.com/watch?v=UH2OWnq7NQ4
프레임 레이트를 제어 할 수 있기를, I는 thread.sleep(500);
라인을 추가했다. 그러나이 줄은 빨간색으로 밑줄이 그어져 있는데, 위에 그려 있으면 :
Unhandled exception: java.lang.interruptedException
내가 뭘 잘못하고 있니? 고맙습니다!
public class AnimationActivity extends SurfaceView implements Runnable {
Thread thread = null;
boolean canDraw = false;
Bitmap backgroundBlack;
Canvas canvas;
SurfaceHolder surfaceHolder;
public AnimationActivity(Context context) {
super(context);
surfaceHolder = getHolder();
backgroundBlack = BitmapFactory.decodeResource(getResources(), R.drawable.background_black);
}
@Override
public void run() {
while (canDraw) {
if (!surfaceHolder.getSurface().isValid()) {
continue;
}
canvas = surfaceHolder.lockCanvas();
canvas.drawBitmap(backgroundBlack,0,0, null);
//drawing stuff here
surfaceHolder.unlockCanvasAndPost(canvas);
thread.sleep(500)
}
}
public void pause() {
canDraw = false;
while (true) {
try {
thread.join();
break;
} catch (InterruptedException e) {
e.printStackTrace();
}
}
thread = null;
}
public void resume() {
canDraw = true;
thread = new Thread(this);
thread.start();
}
}