Android開發 - 跟隨手指的小球實現

fmms 12年前發布 | 39K 次閱讀 Android Android開發 移動開發

今天要實現的是一個跟隨手指的小球,說白了就是讓小球按著手指滑動的軌跡運動,實現起來還是比較容易的。

用到的類是drawView,我們先自定義一個DrawView組件。

DrawView.java:

package cn.csdn.android.view;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class DrawView extends View{

 public float currentX = 300;
 public float currentY = 500;

 public DrawView(Context context) {
  super(context);
  // TODO Auto-generated constructor stub
 }

 @Override
 protected void onDraw(Canvas canvas) {
  // TODO Auto-generated method stub
  super.onDraw(canvas);
  Paint p = new Paint();
  p.setColor(Color.RED);
  canvas.drawCircle(currentX, currentY, 15, p);
 }


}

==================================

在main.xml文件中給一個android:id="@+id/root";

然后寫java代碼實現跟蹤效果:

CustomView.java

package cn.csdn.android.view;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.LinearLayout;

public class CustomViewActivity extends Activity{

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  LinearLayout main = (LinearLayout) findViewById(R.id.root);
  final DrawView draw = new DrawView(this);
     draw.setMinimumWidth(300);
     draw.setMinimumHeight(500);

     draw.setOnTouchListener(new OnTouchListener() {

   @Override
   public boolean onTouch(View v, MotionEvent event) {
    draw.currentX = event.getX();
    draw.currentY = event.getY();
    draw.invalidate();
    return true;
   }
  });
     main.addView(draw);
 }

}
轉自: http://blog.csdn.net/yangbo_hbzjk/article/details/7193544

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!