android移动view
简介:
<ol class="dp-j" start="1"><li class="alt"><span><span class="keyword">import</span><span> android.app.Activity; </span></span></li><li><span><span class="keyword">import</span><span> android.c
- import android.app.Activity;
- import android.content.Context;
- import android.graphics.*;
- import android.os.Bundle;
- import android.view.*;
-
- public class Mian extends Activity {
-
- @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();
- holder.addCallback(this);
- setFocusable(true);
- rect=new Rect(150, 150);
- Thread t=new Thread(rect);
- t.start();
- }
- @Override
-
- public void surfaceChanged(SurfaceHolder holder, int format, int width,int height){}
- @Override
-
- public void surfaceCreated(SurfaceHolder holder)
- {
- new Thread(this).start();
- }
-
- @Override
- public void surfaceDestroyed(SurfaceHolder holder){}
- @Override
- public synchronized void run() {
-
- while(true){
- Canvas canvas = holder.lockCanvas(null);
- canvas.drawColor(Color.WHITE);
- this.drawGraphics(canvas);
- holder.unlockCanvasAndPost(canvas);
- try {
- Thread.sleep(500);
- } catch (InterruptedException e) {
-
- e.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;
- }
- @Override
- public void run() {
-
- while(true){
- y+=speed;
- try {
- Thread.sleep(500);
- } catch (InterruptedException e) {
-
- e.printStackTrace();
- }
- }
- }
- }