嗨我没有顺利行动,在我的游戏列车前后移动它很不错,但是火车运动不顺畅(就像没有火车移动固定速度和平稳)。请帮助............
public void run() {
Canvas canvas = null;
while (mRun) {
long beginTimeMillis, timeTakenMillis, timeLeftMillis;
canvas = mHolder.lockCanvas();
if (canvas != null) {
beginTimeMillis = System.currentTimeMillis();
gp.doDraw(canvas);
gp.animate();
timeTakenMillis = System.currentTimeMillis() - beginTimeMillis;
timeLeftMillis = (1000L / 30) - timeTakenMillis;
Log.i("timeLeftMillis"+timeLeftMillis,"");
mHolder.unlockCanvasAndPost(canvas);
if (timeLeftMillis < 5) {
timeLeftMillis = 5;
}
try {
TimeUnit.MILLISECONDS.sleep(timeLeftMillis);
} catch (InterruptedException ie) {
}
}
}
}
编辑:我不知道如何在顺利移动的同时使用线程。
答案 0 :(得分:0)
您使用的是View还是SurfaceView。如果您使用View,请使用surfaceview。它将使您的应用程序更加顺畅。