Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
public void surfaceChanged(SurfaceHolder holder, int format, int width,<br />
int height) {<br />
ball.setSize(width, height);<br />
}<br />
public void surfaceCreated(SurfaceHolder holder) {<br />
thread = new MyThread ();<br />
thread.start();<br />
}<br />
private void draw() {<br />
Canvas c = null;<br />
try {<br />
c = holder.lockCanvas();<br />
if (c != null) {<br />
doDraw(c);<br />
}<br />
} finally {<br />
if (c != null) {<br />
holder.unlockCanvasAndPost(c);<br />
}<br />
}<br />
}<br />
private void doDraw(Canvas c) {<br />
int width = c.getWidth();<br />
int height = c.getHeight();<br />
c.drawRect(0, 0, width, height, backgroundPaint);<br />
float ballX, ballY;<br />
synchronized (ball.LOCK) {<br />
ballX = ball.ballPixelX;<br />
ballY = ball.ballPixelY;<br />
}<br />
}<br />
c.drawCircle(ballX, ballY, BALL_RADIUS, ballPaint);<br />
public void surfaceDestroyed(SurfaceHolder holder) {<br />
try {<br />
ball.setSize(0, 0);<br />
thread .safeStop();<br />
} finally {<br />
thread = null;<br />
}<br />
}<br />
private class MyThread extends Thread {<br />
private volatile boolean running = true;<br />
public void run() {<br />
while (running) {<br />
try {<br />
TimeUnit.MILLISECONDS.sleep(5);<br />
draw();<br />
ball.updatePhysics();// update ตำแหน่งของลูกบอล<br />
บทที ่ 13 การใช้งานเซนเซอร์ (Sensor) ใน <strong>Android</strong> 279