`
FariyTale
  • 浏览: 195202 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android保存手势操作到文件&读取识别手势

阅读更多

android提供了用来识别和保存手势操作的仓库与绘图区,GestureLibrary与GestureOverlayView,利用它们可以很简单的实现保存手势与识别手势。

加载文件中手势:

gestureLib = GestureLibraries.fromFile(path);//实例手势仓库
gestureLib.load()//加载手势集合

 识别手势:

gestureOverlayView.addOnGesturePerformedListener(new GestureListener());//添加监听 
private final class GestureListener implements GestureOverlayView.OnGesturePerformedListener{  
        @Override  
        public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) {  
            if(state){  
                List<Prediction> predictions = mLibrary.recognize(gesture);//从手势库中查询匹配的内容,匹配的结果可能包括多个相似的结果,匹配度高的结果放在最前面  
                if(!predictions.isEmpty()){  
                    Prediction prediction = predictions.get(0);  
                    //prediction的score属性代表了与手势的相似程度  
                    //prediction的name代表手势对应的字母  
                    if(prediction.score > 1){  
                        addressText.setText(prediction.name);  
                    }  
                }  
            }  
        }  
    }  

 保存手势:

gestureLib.addGesture(name, gesture);//第一个参数为手势名字String类型
gestureLib.save()

 将手势转换成图片:

Bitmap bitmap = gesture.toBitmap(width, height, inset, color);  
//参数为别为宽,高,内间距,笔触颜色

 最后转载一些GestureOverlayView的常用属性:

 

GestureOverlayView:一种用于手势输入的透明覆盖层,可覆盖在其他控件的上方,也可包含其他控件。

Android:eventsInterceptionEnabled 定义当手势已经被识别出来时,是否拦截手势动作

Android:fadeDuration 当用户画完手势时,手势淡出效果的持续时间,单位为毫秒(milliseconds)

Android:fadeEnabled 定义识别完手势后,手势是否自动淡出

Android:fadeOffset 淡出延迟,单位为毫秒,即用户画完手势之后到手势淡出之间的时间间隔

Android:gestureColor 描绘手势的颜色

Android:gestureStrokeAngleThreshold 识别是否为手势前,一笔必须包含的最小曲线度

Android:gestureStrokeLengthThreshold 识别是否为手势前,一笔的最小长度

Android:gestureStrokeSquarenessThreshold 识别是否为手势前,一笔的偏斜度阀值

Android:gestureStrokeType 定义笔画(定义为手势)的类型

Android:gestureStrokeWidth 画手势时,笔划的宽度

Android:orientation 指出是水平(当Orientation为vertical),还是垂直(当orientation为horizontal)笔画自动定义为手势

Android:uncertainGestureColor 未确定为手势之前,描绘用户笔画的颜色

分享到:
评论

相关推荐

    android手势库识别

    - **创建**:使用`GestureBuilder`类可以创建新的手势模板,保存到SQLite数据库中的手势库文件。 - **加载**:在应用启动时,可以加载手势库文件,通过`GestureLibrary`类的`load()`方法读取数据库中的手势模板。 ...

    Android 装载手势文件实例.rar

    总结来说,"Android装载手势文件实例"提供了一个学习和实践Android手势识别的好机会,同时也可能涵盖了网络编程的内容,使开发者能够理解如何结合本地手势处理与远程数据交互。通过这个项目,开发者可以深入了解...

    android手势识别讲解源码

    本文将基于“android手势识别讲解源码”这个主题,深入解析手势识别的基本原理,以及如何在实际项目中应用这些概念。 手势识别主要依赖于Android SDK中的GestureOverlayView和GestureLibrary类。GestureOverlayView...

    Android手机输入法手势识别源代码

    然后将手势保存到文件中.");   et.setText("");   gestureToImage(gesture);   } else {   tv.setText("保存手势失败!");   }   } else {//当存在此文件的时候我们需要先删除此手势然后把新的手势...

    安卓多点触控手势操作相关-Androidstudio亲测可用的创建手势库的工具创建的手势库保存在SD卡根目录下.rar

    5. **加载并识别手势**:在应用运行时,读取SD卡中的手势库,当用户执行手势时,根据记录的手势数据进行实时匹配,触发相应的操作。 需要注意的是,由于Android系统的权限管理,访问SD卡需要在Manifest.xml中声明...

    Qt for android触摸手势事件QGestureEvent

    在本文中,我们将深入探讨如何在Qt for Android环境中利用QGestureEvent处理触摸手势事件。Qt是一个跨平台的应用程序开发框架,支持多种操作系统,包括Android。它提供了丰富的功能,使开发者能够在移动设备上创建...

    Android Gesture手势源码

    2. 识别手势:当用户再次画出手势时,系统读取已学习的手势库,通过某种算法(如动态时间规整DTW-Dynamic Time Warping)比较当前手势与库中所有手势的相似度,找出最匹配的那个。 3. 回调结果:识别结果会通过`...

    自定义手势(gesture)和手势识别

    `save()`方法用于将手势库保存到文件,`load()`方法用于加载手势库: ```java // 保存手势库 gestureLibrary.save(); // 加载手势库 gestureLibrary.load(); ``` **6. 手势识别** 在`GestureOverlayView`上设置...

    Android手势库应用

    1. **手势识别基础**:Android手势库基于一系列的点(Point)和线段(Stroke)来识别手势。开发者需要定义一系列的手势模板(GestureLibrary),这些模板由连续的点序列组成,每个点包含坐标值。用户在屏幕上绘制的...

    android手势启动源码

    总的来说,“android手势启动源码”项目涵盖了Android手势识别、数据存储、用户界面设计和Intent启动应用等多个核心知识点,是学习Android高级开发的好素材。通过这个项目,开发者可以深入理解Android应用的交互设计...

    Android组件——手势密码

    总之,Android手势密码的实现涉及到了多个组件和类的协同工作,开发者需要对Android的触摸事件处理、图形系统以及数据存储有深入的理解。通过熟练掌握这些知识,可以为用户提供更加安全、便捷的身份验证方式。

    Android 手势锁的实现

    综上所述,实现Android手势锁需要理解触摸事件处理、自定义View的绘制、路径操作以及用户输入验证等多个Android基础知识。通过不断优化和调整,可以创建一个既美观又实用的手势锁组件,为用户提供安全且友好的验证...

    手机输入法手势识别源代码.zip

    然后将手势保存到文件中."); et.setText(""); gestureToImage(gesture); } else { tv.setText("保存手势失败!"); } } else {//当存在此文件的时候我们需要先删除此手势然后把新的手势放上 //读取已经存在的...

    安卓多点触控手势操作相关-Android手势调节音量亮度进度.rar

    "Android手势调节音量,亮度,进度"这个压缩包文件,显然是针对Android平台,提供了一种通过手势控制设备音量、屏幕亮度以及媒体播放进度的功能实现。下面我们将详细探讨这些手势操作相关的知识点。 1. 多点触控...

    android手势识别

    用户可以通过绘制手势并保存到数据库,然后在运行时读取并识别这些自定义手势。 5. **UI设计**: 在设计UI时,可以考虑在拨号盘上方添加一个透明的手势识别区域,这样不会遮挡拨号界面。同时,提供清晰的用户反馈...

    Android API 16 手势生成项目

    通过这个项目,开发者可以深入理解Android手势识别的工作原理,并学习如何在实际应用中集成手势控制。手势识别不仅能够增强应用的交互性,还能简化复杂的操作,使用户能够更自然地与设备进行交互。对于Android开发者...

    Android手势解锁

    综上所述,Android手势解锁的实现涉及到了触摸事件的监听、手势路径的记录、存储以及匹配等多个环节。通过学习和理解这一示例代码,开发者可以构建自己的手势解锁功能,为用户提供更加便捷和安全的解锁体验。

    Android-安卓手势解锁示例-手势解锁-自定义手势-安卓手势

    总结,Android手势解锁示例主要涉及了Android手势识别的基础知识,包括`GestureOverlayView`、`GestureLibrary`和`GestureDetector`的使用,以及手势的存储与恢复策略。通过理解这些知识点,开发者可以为自己的应用...

    Android游戏开发 自定义手势--输入法手势技术

    4. 当需要识别手势时,从`GestureLibrary`中读取已保存的手势,并与用户当前绘制的手势进行匹配。 5. 匹配成功后,根据预定义的行为执行相应的游戏逻辑。 在实际应用中,可以通过XML布局文件(如main.xml)设置`...

    手势识别YOLOV8 NANO

    手势识别YOLOV8 NANO是一种先进的计算机视觉技术,它基于深度学习算法,特别是针对实时手势识别优化的YOLO(You Only Look Once)系列模型。YOLOV8 NANO是YOLO系列的一个轻量级版本,专为资源有限的设备如嵌入式系统...

Global site tag (gtag.js) - Google Analytics