我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android基础开发之手势识别

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android基础开发之手势识别

由于精确度等原因,手势识别在android中用的并不多,不过这并不妨碍我们来玩玩这个神奇的玩意。

在android中要使用手势,先得建立手势库,建立手势库非常简单,新建一个android sample project,建一个android示例工程,然后选择创建的android版本,完了之后看到这个界面:

这里写图片描述

选择gesturebuilder,创建成功之后把它安装到真机上,然后可以在里边添加手势,并给手势命名。

这里写图片描述

这里写图片描述

创建完gesture之后,在eclipse的file explore窗口中查看系统文件,在sdcard文件夹中会多出一个gesture文件,先把这个文件导出到桌面。然后新建一个名叫gesture的工程,在res文件夹下新建一个raw文件夹,再把刚才的gesture文件拷贝进来,这样我们这着工程就有了一个手势库了,下面看看怎么用这个手势库。

先看看布局文件:


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 tools:context="com.example.gesture.MainActivity" >
 <android.gesture.GestureOverlayView
 android:id="@+id/mygesture"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:gestureStrokeType="multiple"
  />
</RelativeLayout>

布局文件中就一个关于gestureOverlayView的控件,android:gestureStrokeType属性有两个值,一个是multiple,另一个是single,multiple表示支持多笔画,single表示支持单笔画。

Java代码:


public class MainActivity extends Activity {
 private GestureOverlayView myges;
 private GestureLibrary library;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 myges = (GestureOverlayView) this.findViewById(R.id.mygesture);
 library = GestureLibraries.fromRawResource(this,
  R.raw.gestures);
 // 读取库中数据
 library.load();
 //监听绘制手势事件
 myges.addOnGesturePerformedListener(new OnGesturePerformedListener() {
  @Override
  public void onGesturePerformed(GestureOverlayView overlay,
   Gesture gesture) {
  //Prediction中存储的是比对的结果
  List<Prediction> list = library.recognize(gesture);
  //遍历结果,score是比对后的分数,分数越大,越相近
  for(Prediction p : list){
   Log.i("lenve", p.name+"------------"+p.score);
  }
  if(list.get(0).score>4){
   Toast.makeText(MainActivity.this,list.get(0).name, Toast.LENGTH_LONG).show();
  }else{
   Toast.makeText(MainActivity.this,"手势无法识别", Toast.LENGTH_LONG).show();
  }
  }
 });
 }
}

关键代码已注释。就这么简单,由于识别率等问题,手势识别目前用的并不多。

原文链接:http://blog.csdn.net/u012702547/article/details/45727729

源码下载:Android开发之手势识别

您可能感兴趣的文章:Android通过滑动实现Activity跳转(手势识别器应用)Android手势识别器GestureDetector使用详解札记:android手势识别功能实现(利用MotionEvent)Android View进行手势识别详解Android应用开发中触摸屏手势识别的实现方法解析android开发之为activity增加左右手势识别示例android创建手势识别示例代码android使用gesturedetector手势识别示例分享理解Android的手势识别提高APP的用户体验Android使用GestureOverlayView控件实现手势识别


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android基础开发之手势识别

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android基础开发之手势识别

由于精确度等原因,手势识别在android中用的并不多,不过这并不妨碍我们来玩玩这个神奇的玩意。 在android中要使用手势,先得建立手势库,建立手势库非常简单,新建一个android sample project,建一个android示
2022-06-06

游戏开发基础教程:Cocos2D-X之手势识别

编程学习网:我们在手机游戏中经常会看到类似于水果忍者等用手势操作的手机游戏,那么这些游戏是怎么识别手势的呢?本篇教程将带你深入了解Cocos2D-X中如何实现手势识别。
游戏开发基础教程:Cocos2D-X之手势识别
2024-04-23

android开发之为activity增加左右手势识别示例

android开发中为activity增加左右手势识别,如右滑关闭当前页面。代码如下:/* * for左右手势 * 1.复制下面的内容到目标Activity * 2.目标Activity的onCreate()调用initGesture
2022-06-06

Python+OpenCV手势检测与识别Mediapipe基础篇

网上搜到了一些关于手势处理的实验,我在这儿简单的实现一下,下面这篇文章主要给大家介绍了关于Python+OpenCV手势检测与识别Mediapipe基础篇的相关资料,需要的朋友可以参考下
2022-12-10

Android开发中实现手势识别功能的方法

Android开发中实现手势识别功能的方法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。触摸交互中的概念常用事件首先要了解一些常用的事件: ACTION_DOWN:第一个手指按
2023-05-31

Android开发之Wifi基础教程

本文实例讲述了Android开发Wifi的基础知识。分享给大家供大家参考。具体如下: Android提供了WifiManager这个类,通过这个类可以进行wifi相关的各种操作。 通过wifiManager = (WifiManager)
2022-06-06

wordpress开发之插件开发初识(wordpress插件开发基础)

首先,你要在wp-content/plugins/下建立一个文件夹,文件夹的名字最好只由字母、数字、“-”和下滑组成。同时,还要在这个文件夹下建立一个同名的php文件。比如你的文件夹名字为my-plugin,则php
2022-06-12

Android百度地图应用开发基础知识

一、概述 这一章先来点有意思的百度地图应用示例,然后再分章详细介绍用C#开发Android App的各种基本技术。 本章以百度官网2016年1月发布的地图API(3.7.1版)为例,演示如何用C#和VS2015编写百度地图应用程序,这些
2022-06-06

Android入门之源码开发基础教程

本文讲述了Android入门之源码开发基础教程。分享给大家供大家参考,具体如下: 下载 Android 源码之后,接下来就是学习或者进行开发。 在开发之前,谈一些开发必备知识或者工具,工欲善其事必先利其器嘛! 在前面一篇《Android入门
2022-06-06

Android基础开发小案例之短信发送器

先看看效果图:布局文件: activity_main.xml2022-06-06

Android音视频开发(一)音视频基础知识

前言 最近工作方面没有太多事,所以难得有些空闲时间,针对当前音视频app的流行,为了不让自己淘汰,提升自己的专业能力,于是决定学习安卓平台音视频开发相关知识,然而自己这方面却是一个小白,所以希望通过博客的形式记录下自己一步一步学习的过程,也
2022-06-06

Android应用开发中触摸屏手势识别的实现方法解析

很多时候,利用触摸屏的Fling、Scroll等Gesture(手势)操作来操作会使得应用程序的用户体验大大提升,比如用Scroll手势在 浏览器中滚屏,用Fling在阅读器中翻页等。在Android系统中,手势的识别是通过 Gesture
2022-06-06

Android开发之实现手势滑动的功能

Android开发之实现手势滑动的功能首先得Activity必须实现OnGestureListener接口,该接口提供了关于手势操作的一些方法,onDown方法:onDown是,一旦触摸屏按下,就马上产生onDown事件public boo
2023-05-30

Android提高之BLE开发Android手机搜索iBeacon基站

前面文章讲述了Android手机与BLE终端之间的通信,而最常见的BLE终端应该是苹果公司倡导的iBeacon基站。iBeacon技术基于BLE,它的特点是通过广播对外发送消息,手机不需要连上iBeacon基站也能获取它的信息,目前主要用来
2022-06-06

Android开发笔记之图片缓存、手势及OOM分析

把图片缓存、手势及OOM三个主题放在一起,是因为在Android应用开发过程中,这三个问题经常是联系在一起的。首先,预览大图需要支持手势缩放,旋转,平移等操作;其次,图片在本地需要进行缓存,避免频繁访问网络;最后,图片(Bitmap)是An
2022-06-06

Vue.js基础知识点免费课程:零基础入门,轻松成为前端开发高手

Vue.js是一个开源的渐进式JavaScript框架,用于构建用户界面。它使用组件化开发模式,可以轻松创建和维护复杂的应用程序。本课程将从零基础开始,介绍Vue.js的基础知识,帮助您快速入门前端开发。
Vue.js基础知识点免费课程:零基础入门,轻松成为前端开发高手
2024-02-14

Android程序开发之给背景图加上移动的手势

一,工程图。二,效果图。三,代码。RootViewController.h#import @interface RootViewController : UIViewController
2022-06-06

Android自定义View基础开发之图片加载进度条

学会了Paint,Canvas的基本用法之后,我们就可以动手开始实践了,先写个简单的图片加载进度条看看。 按照惯例,先看效果图,再决定要不要往下看:既然看到这里了,应该是想了解这个图片加载进度条了,我们先看具体用法,再看自定义View的实
2022-06-06

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录