zoukankan      html  css  js  c++  java
  • android小Demo--圆球跟随手指轨迹移动

      eatwhatApp的客户端基本实现,会再后续进行整改,今天做一个在网上找到的小Demo,让屏幕中出现一个圆球,并跟随手指移动。

      写个java类DrawView继承于View:

    public class DrawView extends View {
    
    	public DrawView(Context context) {
    		super(context);
    	}
    }
    

      定义属性:

    	//画笔
    	private Paint paint;
    	//当前X坐标
    	private float currentX;
    	//当前Y坐标
    	private float currentY;
    
    	public DrawView(Context context) {
    		super(context);
    		this.paint = new Paint();
    		this.currentX = 100;
    		this.currentY = 100;
    	}
    

      重写onDraw()方法:

            @Override
    	protected void onDraw(Canvas canvas) {
    		super.onDraw(canvas);
                	//设置画笔颜色
    		paint.setColor(Color.RED);
    		//绘制圆形,中心位置(currentX, currentY),半径10
    		canvas.drawCircle(currentX, currentY, 10, paint);
    	}     
    

      重写onTouchEven()方法:

            @Override
        public boolean onTouchEvent(MotionEvent event) {
            
            //获取点击事件的坐标x,y
            currentX = event.getX();
            currentY = event.getY();
            
            //重绘控件
            invalidate();
            return true;
        }        

      之后变可以在activity中实例化该控件:

            RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout);
            DrawView draw = new DrawView(this);
            layout.addView(draw);

      这样便完成了该demo。

  • 相关阅读:
    函数式宏定义与普通函数
    linux之sort用法
    HDU 4390 Number Sequence 容斥原理
    HDU 4407 Sum 容斥原理
    HDU 4059 The Boss on Mars 容斥原理
    UVA12653 Buses
    UVA 12651 Triangles
    UVA 10892
    HDU 4292 Food
    HDU 4288 Coder
  • 原文地址:https://www.cnblogs.com/superdo/p/5272554.html
Copyright © 2011-2022 走看看