Android的SurfaceView绘图并移动
来源:互联网 发布:2017高仿耐克淘宝店 编辑:程序博客网 时间:2024/05/02 04:34
import android.app.Activity;import android.content.Context;import android.graphics.*;import android.os.Bundle;import android.view.*;public class Mian extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MyView my=new MyView(this); setContentView(my); }}class MyView extends SurfaceView implements SurfaceHolder.Callback,Runnable{ SurfaceHolder holder; Rect rect;//创建类 public MyView(Context context) { super(context); holder = this.getHolder();//获取SurfaceHolder对象实例 holder.addCallback(this);//添加callback接口 setFocusable(true); rect=new Rect(150, 150); Thread t=new Thread(rect); t.start(); } @Override //当SurfaceView尺寸改变时调用 public void surfaceChanged(SurfaceHolder holder, int format, int width,int height){} @Override //当SurfaceView创建时调用 public void surfaceCreated(SurfaceHolder holder) { new Thread(this).start();//启动新的线程 } //当SurfaceView销毁时调用 @Override public void surfaceDestroyed(SurfaceHolder holder){}@Overridepublic synchronized void run() {// TODO Auto-generated method stubwhile(true){Canvas canvas = holder.lockCanvas(null);//SurfaceHolder锁定并获得canvas对象 canvas.drawColor(Color.WHITE);this.drawGraphics(canvas); holder.unlockCanvasAndPost(canvas);//解锁画布,提交画好的图像 try {Thread.sleep(500);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}public void drawGraphics(Canvas canvas){Paint mPaint = new Paint(); mPaint.setStyle(Paint.Style.FILL);//设置为实心 mPaint.setColor(Color.RED); mPaint.setAntiAlias(true);//设置抗锯齿 this.draw(canvas, mPaint);}public void draw(Canvas canvas,Paint p){canvas.drawCircle(100, rect.y, 50, p);//画圆 }}class Rect implements Runnable{//矩形类int x;int y;int speed=10;public Rect(int x,int y){this.x=x;this.y=y;}@Overridepublic void run() {// TODO Auto-generated method stubwhile(true){y+=speed;try {Thread.sleep(500);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
- Android的SurfaceView绘图并移动
- Android的SurfaceView绘图并移动
- Android的View绘图并移动
- Android SurfaceView绘图机制
- Android---绘图机制---SurfaceView
- Android SurfaceView 多线程绘图
- android 绘图之surfaceview
- Android UI SurfaceView的使用-绘制组合图型,并使其移动
- Android SurfaceView onDraw()绘图问题
- Android SurfaceView双缓冲绘图
- Android SurfaceView双缓冲绘图
- android 学习笔记 view和surfaceView的2D绘图
- Android中View,SurfaceView和GLSurfaceView绘图的区别
- Android中View,SurfaceView和GLSurfaceView绘图的区别
- Android中在SurfaceView上高效绘图
- Android中在SurfaceView上高效绘图
- Android中在SurfaceView上高效绘图
- 【Android基础】(12)SurfaceView绘图API详解
- 压力测试工具Tsung安装和使用
- Unity3D优化总结
- TP-Link 路由器上网设置方法
- date小记
- jni Android.mk文件分析
- Android的SurfaceView绘图并移动
- C#向前台页面中输出JS代码
- shell之“>/dev/null 2>&1” 详解
- Python中如何避免使用多个分支语句(多个if和else)——函数字典(Function Map)简介
- wince的png贴图
- 堆与栈的区别
- gSoap客户端使用步骤与问题解决
- JavaScript实现x秒后自动跳转
- 使用easyUI创建XP风格左侧面板