跟随手指的小球

    

Crize_demo\draw_demo\src\main\java\com\ly\draw_demo\DrawView.java

 1 import android.content.Context;
 2 import android.graphics.Canvas;
 3 import android.graphics.Color;
 4 import android.graphics.Paint;
 5 import android.view.View;
 6
 7 public class DrawView extends View {
 8
 9     public float currentX = 40;
10     public float currentY = 50;
11
12     public DrawView(Context context) {
13         super(context);
14     }
15
16     @Override
17     protected void onDraw(Canvas canvas) {
18         super.onDraw(canvas);
19         //创建画笔
20         Paint paint = new Paint();
21         //设置画笔的颜色
22         paint.setColor(Color.RED);
23         //绘制一个小圆(作为小球)
24         canvas.drawCircle(currentX,currentY,15,paint);
25     }
26 }

Crize_demo\draw_demo\src\main\res\layout\activity_main.xml

1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
2     xmlns:tools="http://schemas.android.com/tools"
3     android:layout_width="match_parent"
4     android:layout_height="match_parent"
5     android:orientation="horizontal"
6     android:id="@+id/root"
7     tools:context=".MainActivity">
8
9 </LinearLayout>

Crize_demo\draw_demo\src\main\java\com\ly\draw_demo\MainActivity.java

 1 import android.app.Activity;
 2 import android.os.Bundle;
 3 import android.view.MotionEvent;
 4 import android.view.View;
 5 import android.widget.LinearLayout;
 6
 7 public class MainActivity extends Activity {
 8
 9     @Override
10     protected void onCreate(Bundle savedInstanceState) {
11         super.onCreate(savedInstanceState);
12         setContentView(R.layout.activity_main);
13         //获取布局文件中的LinearLayout容器
14         LinearLayout root = (LinearLayout) findViewById(R.id.root);
15         //创建DrawView组件
16         final DrawView drawView = new DrawView(this);
17         //设置自定义框架的宽度和高度
18         drawView.setMinimumWidth(300);
19         drawView.setMinimumHeight(500);
20         //为drawView绑定Touch事件(触摸屏幕的监听事件)
21         drawView.setOnTouchListener(new View.OnTouchListener() {
22             @Override
23             public boolean onTouch(View v, MotionEvent event) {
24                 //修改drawView组件的currentX,currentY两个属性
25                 drawView.currentX = event.getX();
26                 drawView.currentY = event.getY();
27                 //通知drawView组件重绘
28                 drawView.invalidate();
29                 //返回true表明处理方法已经处理该事件
30                 return true;
31             }
32         });
33         root.addView(drawView);
34     }
35
36
37 }
时间: 2024-10-18 06:18:48

跟随手指的小球的相关文章

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.Pa

自定义View实现跟随手指的小球

package com.pingyijinren.test; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.util.AttributeSet; import android.view.View; /** * Created by Administrator on

Android应用小实例--跟随手指的小球

实现效果图: 实现方式: 继承View类自己重绘一个圆,然后将这个自定义的继承于View类的加入到当前的Activity并且为这个自定义的View控件添加一个onTouchLitener事件 自定义组件继承于View类: [java] view plain copy print ? package com.jiahui.draw; import android.content.Context; import android.graphics.Canvas; import android.grap

移动端H5单页面跟随手指滑动切换组件PageSlider

转载地址:http://www.ifrans.cn/pageslider/?replytocom=38914 PageSlider PageSlider 是一个基于zepto.js用于实现H5单页面跟随手指上下滑动切换的组件,支持通过transform3D启动GPU加速,目前仅支持移动端touch设备. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name=&

滑动跟随手指横向滑动

浪去项目有个头图滑动横向滑动的需求,故写次demo <!DOCTYPE html> <html> <head> <title>滑动跟随手指横向滑动</title> <style type="text/css"> .spirit { /* 方块的class名称*/ position: absolute; width: 50px; height: 50px; background-color: red; } </

android脚步---跟随手指动的小球

这次的学习主要是在包里面除自动生成的mainactivity.java之外,再新建一个class, DrawView,在mainactivity里面调用DrawView. 在DrawView里面主要是重写onDraw方法,----该方法负责在该组件指定位置绘制一个小球. package org.crazyit.helloworld; import android.content.Context; import android.graphics.Canvas; import android.gra

第二章实例:动态生成View控件例子---小球跟随手指滑动

package mydefault.packge; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.os.Bundle; import androi

控件跟随手指移动(心得)

/** * 初始坐标 * * 都是相对于控件本身的坐标 * * x y 手指按下的坐标 */ private float x = 0, y = 0; @Override public boolean onTouchEvent(MotionEvent event) { // 手指按下的坐标 float downX = 0, downY = 0; // 移动后的坐标 改变的值 float moveX = 0, moveY = 0, changeX = 0, changeY = 0; switch (

1 跟随手指移动的球

1 package ui; 2 3 import android.content.Context; 4 import android.graphics.Canvas; 5 import android.graphics.Color; 6 import android.graphics.Paint; 7 import android.util.AttributeSet; 8 import android.view.MotionEvent; 9 import android.view.View; 1