老师今天开始讲android的游戏,讲到了view和surfaceview

下面是view的演示部分

private Paint paint;//游戏里很少用double,都是用longprivate int x=10,y=10;private Thread th;//线程控制private boolean flag;public boolean isFlag() {return flag;}public void setFlag(boolean flag) {this.flag = flag;}public MyView(Context context) {super(context);paint=new Paint();paint.setColor(Color.BLUE);setFocusable(true);setFocusableInTouchMode(true);flag=true;th=new Thread(this);th.start();}@Overrideprotected void onDraw(Canvas canvas) {super.onDraw(canvas);canvas.drawText("点我", x, y, paint);}@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode==KeyEvent.KEYCODE_DPAD_DOWN) {System.out.println("down");y++;}//重绘方法invalidate();return super.onKeyDown(keyCode, event);}@Overridepublic boolean onTouchEvent(MotionEvent event) {//必须改为true,否则就会执行一次x=(int) event.getX();y=(int) event.getY();invalidate();return true;}@Overridepublic void run() {while (flag) {System.out.println("run");x++;y++;try {Thread.sleep(50);} catch (InterruptedException e) {e.printStackTrace();}postInvalidate();}}

演示gif动画,暂无



更多相关文章

  1. 【转】android AsyncTask 为 多任务 多线程 解决方案
  2. android 延时 不用另起线程或timertask
  3. Google Android官方文档进程与线程(Processes and Threads)翻译
  4. Android-Jni线程(一)— 创建线程
  5. Android 线程池相关知识
  6. Android 平台上玩DOS游戏

随机推荐

  1. android adb工具
  2. Android(安卓)adb中命令的运行
  3. Android(安卓)串口通信开发笔记01
  4. 如何保证Android设备的安全性
  5. Android使用Jdbc连接远程数据库
  6. Android入门教程(三)之------导入现有And
  7. Android开发手记一 NDK编程实例
  8. Android入门教程(三)之------导入现有And
  9. Android第一节(体系介绍),维维复习
  10. Android(安卓)studio 天朝下 从下载到环