`
mickey_hou
  • 浏览: 245660 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android触屏事件处理—2

阅读更多
  /**
     * Called when the activity is first created
     */
    @Override
    protected void onCreate(Bundle instance)
    {
        super.onCreate(instance);
        setContentView(new TouchMotionView(this));
    }
   
    /**
     * 思路:先加载类,继承view
     *       定义半径,x、y轴 , Paint绘画工具对象、action_value  Motion Action值
     *       构造对象,初始化x、y轴 ,action_value
     *       初始化画布
     *       定义onTouchEvent事件处理
     *
     * 触屏控制显示画布  在画布上绘制小球
     *
     * @author  mickey
     * @version  1.0, 2012-8-2
     * @since  NLP V100R001C01
     */
    private class TouchMotionView extends View
    {
       
        private int RADIUS = 10;
       
        private Paint myPaint = new Paint();
       
        private int action_value;
       
        private float x_value, y_value;
       
        /**
         * constructor
         *
         * @param
         * @throws
         * @since NLP V100R001C01
         */
        public TouchMotionView(Context context)
        {
            super(context);
           
            action_value = MotionEvent.ACTION_UP;
           
            x_value = 0;
            y_value = 0;
        }
       
        /**
         * 获取坐标点  在画布上绘制小球
         * @param canvas
         */
        @Override
        protected void onDraw(Canvas canvas)
        {
            Paint paint = myPaint;
           
            canvas.drawColor(R.color.red);
           
            if (MotionEvent.ACTION_MOVE == action_value) // 移动动作
            {
                paint.setColor(Color.RED);
            }
            else if (MotionEvent.ACTION_UP == action_value)  // 抬起动作
            {
                paint.setColor(Color.WHITE);
            }
            else if (MotionEvent.ACTION_DOWN == action_value)  // 按下动作
            {
                paint.setColor(Color.GREEN);
            }
           
            canvas.drawCircle(x_value, y_value, RADIUS, paint); //半径长度
            setTitle("Action = " + action_value + " ["+ x_value +","+ y_value +"]");
        }
       
        @Override
        public boolean onTouchEvent(MotionEvent event)
        {
            action_value = event.getAction();  // 获得动作
           
            x_value = event.getX();   // 获得坐标
            y_value = event.getY();
           
            invalidate();  // 重新绘制
            return true;
        }
    }
分享到:
评论

相关推荐

    android触屏事件之activity,view,viewgroup

    在Android开发中,触屏事件处理是用户交互的核心部分,涉及到Activity、View和ViewGroup这三个关键组件。本文将深入探讨这些组件在触屏事件处理中的角色和机制。 首先,我们来理解Activity。Activity是Android应用...

    事件处理机制之触屏事件.

    2. 触屏事件的三种类型: - ccTouchBegan():当用户首次接触屏幕时调用,返回值决定是否继续处理后续的ccTouchMoved和ccTouchEnded事件。 - ccTouchMoved():当用户手指在屏幕上移动时调用,常用于拖动操作。 - ...

    android game 触屏事件处理

    在Android游戏开发中,触屏事件处理是至关重要的部分,它允许玩家与游戏进行交互,控制游戏对象的移动、点击按钮、触发各种游戏行为。本文将深入探讨Android游戏中的触屏事件处理机制,并通过分析`mathine.apk`这个...

    Android应用程序输入事件处理机制

    在Android应用程序中,有一类特殊的消息,是专门负责与用户进行交互的,它们就是触摸屏和键盘等输入事件。触摸屏和键盘事件是统一由系统输入管理器InputManager进行分发的。也就是说,InputManager负责从硬件接收...

    android 触屏事件总结

    android触屏事件总结 goodluck all

    Qt for android触摸手势事件QGestureEvent

    QGestureEvent是Qt事件系统的一部分,它包含了在触摸屏上发生的所有手势信息。当用户执行手势时,Qt会生成一个QGestureEvent,并将其发送给相应部件的`gestureEvent()`方法。这个事件包含了所有已识别的手势对象,...

    Android键盘事件处理例子

    软键盘通常在触摸屏设备上显示,而硬件键盘则是指物理键盘,如连接到Android设备的蓝牙键盘。 1. 软键盘事件处理: 软键盘事件通常是通过EditText等可输入控件的TextWatcher监听器来捕获的。TextWatcher提供了三个...

    【Android每周专题】触摸屏事件实验代码

    在Android开发中,触摸屏事件处理是构建用户交互界面的关键部分。本文将深入探讨如何在Android应用中处理触摸事件,通过实验代码来帮助开发者理解这一核心概念。 首先,我们需要了解Android中的触摸事件模型。在...

    android touch事件及触屏简单的应用

    本篇主要介绍Android中的触摸事件处理机制以及如何实现一个简单的触屏画图应用。 Android的触摸事件处理主要通过View类的onTouchEvent()方法来完成。当用户在屏幕上进行触摸操作时,系统会生成一系列的MotionEvent...

    android_触摸事件Demo

    4. ACTION_CANCEL:触摸事件被取消,例如手指在触摸屏外的区域抬起,或者系统需要回收资源。 二、触摸事件的分发机制 Android系统中的触摸事件分发机制遵循“父控件优先”的原则,分为三个阶段: ...

    android触摸屏事件

    本示例旨在讲解如何处理Android应用中的触摸屏事件,虽然目前仅涉及基础部分,但后续会逐步深入到更复杂的交互。 首先,Android通过`MotionEvent`类来表示触摸屏上的动作。`MotionEvent`包含了触摸事件的所有信息,...

    android 手势操作 滑动效果 触摸屏事件处理

    总结,理解和熟练运用Android的手势操作、滑动效果以及触摸屏事件处理是开发高效、用户体验优良的应用的基础。通过上述知识点,开发者可以创建出更具互动性和吸引力的Android应用。在实践中,不断优化和调整,以达到...

    ANDROID触屏测试源码

    "ANDROID触屏测试源码" 提供了一种专门用于测试Android设备多点触摸功能的解决方案,它声称支持高达10点的同步触摸。这样的工具对于开发者和硬件制造商来说至关重要,因为他们需要确保设备在处理多点触控时的准确性...

    android手势操作滑动效果触摸屏事件处理.pdf

    在Android开发中,触摸屏事件处理是构建用户交互界面的关键部分,特别是在移动设备上,手势操作极大地提升了用户体验。本文将详细介绍如何在Android中处理触摸屏事件以及实现手势识别,特别是Fling和Scroll这两种...

    android中处理各种触摸事件

    ### Android中处理各种触摸事件详解 #### 一、引言 在Android开发中,触摸事件是用户与应用程序交互的重要方式之一。正确地处理各种触摸事件不仅能够提升用户体验,还能够帮助开发者实现更加丰富的功能。本文将...

    android中触摸事件的分发机制

    在Android系统中,触摸事件的处理是通过一个复杂的分发机制来实现的,这个机制确保了用户在屏幕上点击或滑动时,相应的视图能够正确地接收到并响应这些动作。下面将详细介绍Android中触摸事件的分发机制,以及如何在...

    Android usb 触摸屏驱动

    这个子系统负责处理来自各种输入设备(包括键盘、鼠标和触摸屏)的事件。Android系统支持多种类型的触摸屏,包括电阻屏和电容屏。电阻屏依赖于物理接触来感知触摸,而电容屏则是通过检测人体电容变化来识别触控。两...

    Android 事件处理机制

    Android事件处理主要包括两种方式:基于监听器(Listener)的事件处理和基于消息队列(Message Queue)的事件处理。本文将深入探讨这两种机制及其在实际开发中的应用。 一、基于监听器的事件处理 1. 视图层次结构...

    android之Touch事件处理机制测试

    在"androidTest"项目中,可以通过创建不同的View和ViewGroup,设置相应的监听器,并通过log输出调试信息,来模拟和测试各种触摸事件的处理和传递情况。例如,可以创建一个LinearLayout作为父View,包含两个子View,...

    android 滑动触摸屏幕事件

    在Android开发中,触摸屏事件处理是一项重要的功能,尤其对于需要用户交互的应用程序来说更是如此。本文将深入探讨一个具体的例子,即如何通过监听触摸屏上的滑动事件来截取部分图片并显示出来。这个例子基于提供的...

Global site tag (gtag.js) - Google Analytics