首页 > 电脑/网络 >笔记本电脑
2017-11-16 00:00:00 2017-11-17 23:59:59 http://h.chanjet.com/activity/hkj/xlaw/xlaw.html http://yyk.iask.sina.com.cn/pic/fimg/3991231702_800.jpg 2018-03-26 00:00:00 2018-04-25 23:59:59

android SurfaceView 画图为什么保留上一次的图?

android SurfaceView 画图为什么保留上一次的图??? 就像让一条线动。package com.surface;<br/><br/>import java.util.Date;<br/><br/>import android.app.Activity;<br/>import android.content.Context;<br/>import android.graphics.Canvas;<br/>import android.graphics.Color;<br/>import android.graphics.Paint;<br/>import android.os.Bundle;<br/>import android.util.Log;<br/>import android.view.SurfaceHolder;<br/>import android.view.SurfaceHolder.Callback;<br/>import android.view.SurfaceView;<br/><br/>public class Test extends Activity {<br/> private SurfaceView sv;<br/><br/> /** Called when the activity is first created. */<br/> @Override<br/> public void onCreate(Bundle savedInstanceState) {<br/> super.onCreate(savedInstanceState);<br/> sv = new GameView(this);<br/> setContentView(sv);<br/><br/> }<br/><br/> public class GameView extends SurfaceView implements Callback {<br/><br/> private SurfaceHolder holder;<br/><br/> public GameView(Context context) {<br/> super(context);<br/> // TODO Auto-generated constructor stub<br/> holder = getHolder();<br/> holder.addCallback(this);<br/> }<br/><br/> @Override<br/> public void surfaceChanged(SurfaceHolder holder, int format, int width,<br/> int height) {<br/> // TODO Auto-generated method stub<br/> Log.i("///surfaceChanged", "surfaceChanged");<br/> // new Thread(new rungame()).start();<br/> }<br/><br/> @Override<br/> public void surfaceCreated(SurfaceHolder holder) {<br/> // TODO Auto-generated method stub<br/> Log.i("///surfaceCreated", "surfaceCreated");<br/> new Thread(new rungame()).start();<br/> }<br/><br/> @Override<br/> public void surfaceDestroyed(SurfaceHolder holder) {<br/> // TODO Auto-generated method stub<br/> Log.i("///surfaceDestroyed", "surfaceDestroyed");<br/> }<br/><br/> boolean isStart = true;<br/><br/> public class rungame implements Runnable {<br/><br/> private Canvas c;<br/> private Date d;<br/><br/> @Override<br/> public void run() {<br/> // TODO Auto-generated method stub<br/> // 游戏逻辑<br/> int fangxiang = 1;<br/> float startX = 0, startY = 0, stopX = 340, stopY = 0;<br/> while (isStart) {<br/> d = new Date();<br/> c = holder.lockCanvas();<br/> Paint p = new Paint();<br/> p.setColor(Color.RED);<br/> c.drawLine(startX, startY, stopX, stopY, p);<br/><br/> holder.unlockCanvasAndPost(c);<br/> <br/> try {<br/> Thread.sleep(33);<br/> } catch (InterruptedException e) {<br/> // TODO Auto-generated catch block<br/> e.printStackTrace();<br/> }<br/><br/> if (startY 480) {<br/> fangxiang *= (-1);<br/> fangxiang *= (-1);<br/> }<br/> startY = 2 * fangxiang;<br/> stopY = 2 * fangxiang;<br/> }<br/> }<br/><br/> }<br/> }<br/><br/>}[展开]

回*** 2018-03-04 02:52:11 举报

其他回答

50分钟前 广告
查看详情

类似问题换一批

相关知识 换一批

戴尔灵越660s怎么有两...

您好: 以下方法供您参考: 您的戴尔电脑的情况估计是驱动问题,建议您安...

如何拆解笔记本电脑

除了螺丝还有锁扣。注意观察两个螺丝中间的部位有可能有。

热度TOP 查看更多

大家都关注换一批

提问

热点搜索更多

举报

举报原因(必选):

取消 确定举报
3a7f7956b2984ca88f5d5c19c0fe4715