输入法手势技术
键盘手指分布图

(1)视觉输入法:视觉输入法是指在击键前,首先用眼睛找到该键。
由于这种输入方式录入员既要看文稿,又要看键盘,极易使录入员疲倦,注意力分散,因而录入速度慢且容易出错。
(2)盲打输入法:盲打输入法又称触觉输入法,是目前速度最快的一种键盘输入方式。
其特点是利用事先制定的手指分工和击键规则,仅根据自己指尖的触觉判断手指所在键位,然后准确无误地击键,而录入人员的眼睛只扫描被录入的文稿。
由于这种输入法的手、眼分工明确,使录入员能够把注意力集中于文稿,因而输入速度大大加快,同时错误率也大大降低。
为提高计算机操作速度和操作质量,本教材要求在学习计算机操作时,应熟练掌握盲打录入法的基本方法和技巧,养成良好的键盘操作习惯。
1.2.1 正确的姿势首先,将坐椅调节至合适的高度,全身放松,含胸收腹。
眼睛同电脑屏幕成水平直线,目光微微向下,这样眼睛不易产生疲劳,视线过高或过低对眼睛都会不利。
初学键盘输入时,首先必须注意的是击键的姿势,如果初学时姿势不当,就不能做到准确快速地输入,也极易产生疲劳。
1. 姿势(1)使计算机键盘和工作台的前沿对齐。
腰挺直,头稍低,上身略向前倾,胸部距键盘约20厘米(约两拳宽)。
身体稍偏于键盘右方。
(2)坐姿端正,重心落在座椅上,全身自然放松。
双腿平行,小腿和大腿成直角,两脚自然踏地。
(3)手臂自然下垂,肘部距身体约10厘米,手指轻放于规定的字键上,手腕自然伸直,腕部禁止撑靠在工作台或键盘上。
人与键盘的距离,可移动椅子或者键盘的位置,来调节到人能保持正确的击键姿势为止。
(4)显示器宜放在键盘的正后方,放输入原稿前,先将键盘右移5厘米,再将原稿紧靠键盘左侧放置,以便阅读。
(5)手指以手腕为轴略向上抬起,手指略为弯曲。
自然下垂,形成勺状。
左手食指轻放在F键上,中指、无名指、小拇指分别悬放在D、S、A键上,右手食指轻放在J键上,中指、无名指、小拇指分别悬放在K、L和;键上,左右手的大拇指轻放在空格键上,如图1-2所示。
迅飞输入手法

迅飞输入手法在我们的日常生活中,随着科技的不断发展,电脑和手机已经成为大家生活中不可或缺的物品。
当我们使用电脑或手机时,输入文字可以说是我们经常会做的事情之一,因此,输入法的发展也就成为了一项重要的任务。
在诸多输入法中,迅飞输入法无疑是近年来备受瞩目的一种输入法,而迅飞输入法的手法更是值得我们深入研究。
一、什么是迅飞输入法迅飞输入法是指利用人的输入习惯,将汉字转化为拼音的方法,而输入方法则是在拼音的基础上,通过不同的手法来进行文字的输入。
迅飞输入法已经发展成为常见的输入法之一,它具备快速输入、准确性高、支持多种语言等优点。
二、迅飞输入法的手法1. 全拼输入法全拼输入法是最基本、最简单的迅飞输入法手法,全拼指的是拼音全拼。
例如,输入“中国”,拼音为“zhong guo”,则可以直接输入“zhongguo”来实现输入。
2. 双拼输入法双拼输入法在全拼的基础上,使用了拼音的头尾组合,例如,“zhong”可以输入“zh”,而“guo”可以输入“uo”,因此,“中国”可以输入“zguo”来实现输入。
3. 滑动输入法滑动输入法是利用手指在键盘上拖动来进行输入的一种方法,它通过组合手指滑动的方向,来识别不同的字母或汉字,从而实现输入。
滑动输入法支持单指滑、多指滑等多种手势操作。
4. 笔画输入法笔画输入法是一种比较特殊的输入法,它使用手写或输入笔画的方式进行输入。
例如,“一”这个汉字的笔画数是一笔,“二”这个汉字的笔画数是两笔,因此,在笔画输入法中,输入“一”便直接可以输入“1”,而输入“二”便可以输入“2”。
5. 语音输入法语音输入法是一种比较新的迅飞输入法手法,它利用手机或电脑的麦克风,将说出的文字转化为语音后进行输入。
这种输入法可以让那些不擅长打字的人更加方便的进行输入。
三、迅飞输入法的优点1. 快速准确迅飞输入法的手法多样,可以根据不同的习惯和需求进行快速输入,而且由于拼音与汉字的对应关系较为严谨,输入准确率也比较高。
手写输入法的原理

手写输入法的原理
手写输入法是一种通过手写识别技术将用户的手写字符转化为计算机可以识别的文本的输入方式。
其原理基于以下几个步骤:
1. 采集手写数据:手写输入法需要先采集大量不同用户的手写字符样本数据,包括不同字母、数字、标点符号和其他特殊符号等。
这些手写数据会用于训练模型,使其能够识别出用户输入的手写字符。
2. 预处理:在输入手写字符之前,输入法会先对输入进行一些预处理操作,例如去除噪声、调整输入的大小和方向等。
这样可以提高后续的手写字符识别精度。
3. 特征提取:接下来,手写输入法会对预处理后的手写字符进行特征提取。
常用的手写字符特征包括笔画的形状、方向、长度、起始点和结束点等。
这些特征将有助于后续的手写字符识别过程。
4. 字符识别:使用训练好的模型和提取的特征,手写输入法会通过一系列算法和模式匹配技术来识别手写字符。
这些算法和模式匹配技术包括神经网络、决策树、支持向量机等。
手写输入法会将用户输入的手写字符与训练数据中最相似的字符进行匹配,从而确定输入的字符是什么。
5. 输出:最后,手写输入法将识别出的手写字符转化为计算机可以识别和处理的文本。
这些文本可以用于各种应用,如文档编辑、聊天应用、搜索引擎等。
需要注意的是,手写输入法的准确性受多种因素影响,包括用户手写的质量、训练数据的丰富程度以及识别算法的效果等。
为了提高手写输入法的准确性,需要不断优化算法模型,并且随着用户的使用,逐渐加入用户的手写习惯和个性化样式。
打字正确的手势与方法

打字正确的手势与方法
打字正确的手势和方法包括以下几点:
1. 坐姿正确:身体直立,两手平放在键盘上,肩部放松,腕部自然下垂。
2. 手指分区:左手的小指到食指依次放在键盘上第一排的ASDF,右手的小指到食指依次放在JKL;' 键上。
3. 采用10个手指打字法:使用所有手指打字,如何放置手指是非常重要的。
4. 打字时,要向下按键,而不是向侧面按键,这样不容易伤到肌肉。
5. 打字时,键盘上的每个键都应该用到,因此不要使用两个手指敲击键盘,这样会导致某些键被磨损得更快。
6. 打字时,要注重速度和准确性的平衡,不要盲目追求速度,而忽略了打字的准确性。
7. 尽可能不弯曲手腕,保持手指弯曲,并保持手指与键盘垂直。
这样可避免手部疲劳和舒适。
8. 适当的休息和锻炼。
尽管打字不是很耗费体力,但也需要适当的休息和锻炼,
以保持好的打字习惯和身体健康。
总之,打字正确的手势和方法是非常重要的,它能够减少打字时的疲劳和错误率,并且还可以有效的提高打字速度和准确性。
快速打字正确的标准指法(附图)

我们通用键盘的键位是有排列标准的,如果配合上一套比较科学的指法,必将有效地提高打字的速度和准确率。
这里暂不讨论键盘上的字母排列是否符合中国人的打字习惯,既然目前沿用的仍是一种通用的标准键位键盘,建议大家尽量用下面这套标准打字指法来打字。
说它是标准的打字指法,其实就是一种被广泛认为比较科学合理的手指分工击键的打字指法方式,以实现各手指与键位的最佳配合从而高速准确地进行打字输入。
不过,打字指法往往也因人而异,我也听说过一些打字牛人,有的就用一个指头点键盘,够厉害吧~~~下面就介绍下标准打字指法(图文):一、什么是标准的打字指法?所谓打字指法,就是把键盘上的所有键合理地分配给十个手指,且规定每个手指对应哪几个键,这些规定基本上是沿用原来英文打字机的分配方式。
如下图所示:图:打字指法图示(各手指与对应的键位)二、打字指法详细说明在键盘中,第三排键中的A、S、D、F和J、K、L、;这8个键称为基本键(也叫基准键)。
基本键是十个手指常驻的位置,其它键都是根据基本键的键位来定位的。
在打字过程中,每只手指只能打指法图上规定的键,不要击打规定以外的键,不正规的手指分工对后期速度提升是一个很大的障碍。
空格键由两个大拇指负责,左手打完字符键后需要击空格时用右手拇指打空格,右手打完字符键后需要击空格时用左手拇指打空格。
SHIFT键是用来的进行大小写及其它多字符键转换的,左手的字符键用右手按SHIFT,右手的字符键用左手按SHIFT键。
三、打字指法练习要点和打字指法技巧,很实用的大家都注意看一下哦,除了介绍打字指法的技巧外,更有很多提高打字速度和打字准确性的细节提示,都是平时被人们所忽略的。
另外,对于经常使用电脑的网友,尤其注意调整好坐姿和坐椅高低,手指与键盘位置等,不要弄出些“职业病”就不好了。
打字指法练习技巧之手指击键的技巧——1、掌握动作的准确性,击键力度要适中,节奏要均匀,普通计算机键盘的三排字母键处于同一平面上,因此,在进行键盘操作时,主要的用力部分是指关节,而不是手腕,这是初学时的基本要求。
打字时的正确手位技巧

打字时的正确手位技巧作为现代社会中必备的一项基本技能,打字已经渗透到我们生活的方方面面。
无论是在学习、工作还是日常生活中,打字都扮演着重要的角色。
然而,很多人在打字时却常常出现手指位置不正确、不规范的情况。
本文将介绍一些打字时的正确手位技巧,旨在帮助读者提高打字速度和准确度。
一、基本手位在掌握打字技巧之前,了解正确的基本手位十分重要。
在使用标准的键盘布局时,将左手的食指放在字母键盘上的"F"键上,其他手指分别放置在旁边的键位上。
右手的手指应该以"J"键位为中心,并与左手对称放置。
二、手指移动在打字过程中,我们需要随时移动手指以按下不同的键位。
为了保持高效的输入速度,正确的手指移动是至关重要的。
应该始终保持手指的弯曲状态,以便在按下不同的键位时自然移动。
三、正确按键正确按键是打字准确性的基础。
每根手指应负责特定的键位,避免左右手指交叉操作。
例如,左手小指负责键盘上的"A"键,左手无名指负责键盘上的"S"键,右手无名指负责键盘上的"K"键等等。
四、节奏性输入节奏性输入是指保持相对稳定的速度按键,而不是过快或过慢。
如果你的按键速度过快,很容易出现错位或遗漏按键的情况;而按键速度过慢,则会影响打字的效率。
要注重打字的节奏感,保持适当的速度。
五、保持放松在打字时,手指的放松非常重要。
应避免用力按下键位,手指应放松自然地触碰键盘。
过度用力容易导致手指疲劳和不适,影响打字的速度和准确性。
要保持舒适的手部姿势,尽量减轻手指的压力。
六、刻意练习练习是提高打字速度和准确度的关键。
进行刻意练习,通过打字软件或在线打字练习平台,选择适合自己水平的练习课程进行练习。
可以从慢速的、逐渐加快的练习开始,逐步提高打字速度。
同时,注意纠正手指移动和正确按键的问题。
七、多练习实战除了练习打字课程外,还应多进行实战练习。
可以选择一些有趣的文章或内容进行打字,这样既能提高打字速度和准确度,又能增加兴趣和乐趣。
打字手势

右手食指-J H U Y M N 7 6。
右手中指-K I 8和逗号、右Alt键。
右手无名指-L o 9和句号右Win徽标键。
右手小指-P 0、";" "‘" "[" "]" "-" "=" "\" "/"、右Ctrl、右Shift、回车、退格键、菜单键(徽标键旁边的)。
497849514|五级
打字时,双手大拇指放在空格键上,左手食指放在F键,中指-D,无名指-S,小指-A;右手食指放在J键,中指-K,无名指-L,小指-分号键上。
对应键位
左右手大拇指-空格键。
左手食指-F G R T V B 4 5。
左手中指-D E C 3。
左手无名指-S W X 2,和左Alt键。
小键盘:
右手食指放在4上,中指放在5,无名指放在6,小指放在+,拇指放在0。
键位:(右手)
食指-4 7 1和Num Lock。
中指-5 8 பைடு நூலகம் /。
无名指-6 9 3 *。
小指-“+ -”和Enter。
一个一个字打出来的,好辛苦啊!
讯飞输入法手势使用指南

讯飞输入法手势使用指南讯飞输入法手势使用说明一、输入法简介讯飞输入法是由科大讯飞推出的一款适用于智能手机、平板电脑、互联网电视等各种终端设备的输入法,是全球首款基于“云计算”方式实现的智能语音输入法。
软件集语音、手写、按键输入于一体,具有强大的语音识别能力,首创键盘连续手写、叠写设计,可在同一界面实现多种输入方式平滑切换,大大提升了输入速度。
首创“蜂巢”输入模型,独家支持拼音、手写、语音“本地+云端”立体输入引擎,使用更加方便快捷。
您当前使用的是讯飞输入法安卓(Android)手机版本。
新功能与优化新增离线语音功能新增手写笔迹特效功能新增拼音云输入功能新增个性化表情输入功能新增单手键盘输入模式新增手写生僻字标注读音功能完美兼容Android 5.0(棒棒糖)系统返回顶部二、特色功能1、语音输入讯飞输入法是首款支持普通话、粤语、英语、方言输入的智能语音输入法,点击键盘上方的麦克风,即可体验到讯飞语音输入独特魅力。
语音输入时,您可以一次说出想输入的所有内容,讯飞输入法将替您完成断句、添加标点等输入操作,完全解放您的双手。
2、键盘连续手写讯飞输入法支持在键盘上直接手写,一次可以连续书写多个字。
您可以通过点击关于页面中的【教程】,观看连续手写功能的演示。
如您较少使用到拼音功能,可以选择切换到半屏或全屏手写键盘。
目前点划、双键布局的英文键盘,暂不支持“键盘连续手写”功能。
返回顶部三、常见问题(Q&A)1、新手入门(1)安装了讯飞输入法,怎么没法使用啊?方法一:进入手机的“全部应用程序”,找到并点击“讯飞输入法”图标,按照配置向导进行设置即可。
方法二:步骤1:先启用,进入手机设置中,选择“语言和键盘”设置,找到讯飞输入法选项,勾选后即可启用讯飞输入法;声明:由于输入法属于系统级别的应用软件,需要较高的权限才能使用,因此有的手机在勾选时会弹出警告提示框,提醒您输入法可能会搜集您的账号密码等内容。
但讯飞输入法决不会收集您的任何隐私信息,请放心勾选、使用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
十七、让玩家自定义手势玩转Android游戏!—Android Gesture之【输入法手势技术】原文地址:/xiaominghimi/archive/2011/01/14/6137136.aspx有童鞋问我为什么不用SDK2.1 ,2.2来进行游戏开发,那我这里稍微说两句:1.Android SDK 属于向下兼容!那么低版本可以运行的,高版本基本上更是没问题!(当然每次SDK的更新也会带来新功能,或者修改了一些原来的BUG等等,那么其实对于游戏开发来说,如果你的游戏中不需要更高的SDK版本的支持情况下,完全不必去追求最新的SDK!)2.使用低版本进行游戏开发这样能兼顾更多的机型,获取更多的用户!3.大家都知道Android SDK 每次版本的更新,底层代码也会更健壮和优化了!比如我们公司的网游Android版在G2(SDK1.5)上跑起来稍微有些卡,而在我的手机上(SDK2.2)运行起来流畅的没说的~各种舒坦~~但是这样也会带来一些弊端,比如我们自己游戏如果上来就用高版本SDK进行开发,那么对于性能、内存上到底如何,我们都不会很容易的看出其效果,如果我们用低版本的SDK则会让我们明显的感受到性能到底如何~你想想如果你的游戏在1.5 ,1.6上跑起来很流畅,那放在更高版本的SDK机器上更是没说的啦~总结:游戏开发中,如果你游戏不需要更高的API的支持,那么推荐基于SDK 1.5和1.6来开发!在上一篇中我给大家介绍了触摸屏手势操作,但是这种触屏手势的操作比较有局限性;比如我们都知道Android可以利用手势来解锁,比如九宫格形式的,通过自定义的一个单笔画手势可以解开屏幕锁,还可以自定义笔画手势来启动一个应用等,那么这种所谓的笔画手势其实就是今天我要给大家讲解的输入法手势识别技术!这种手势是我们可以自己来自定义,而不像之前的触屏手势操作只是利用Android 对一些触屏动作的封装罢了。
下面上几张手机自定义笔划手势解锁的的截图:左图中最后一个是自定义解锁的输入法手势~OK,那么既然利用手势既然能进行解锁等操作,那么我们游戏开发中,更是可以加入这一亮点了,比如在游戏中我画个圆形执行换背景操作,画个X表示退出游戏等等,等等、哈哈是不是感觉很有意思了?好的,下面就开始进入讲解!首先本篇主要学习两点:1. 如何创建输入法手势、删除输入法手势、从SD卡中读取出手势文件!2.当输入法手势创建后,如何来匹配出我们的自定义手势!下面我们来熟习两个类和几个概念:1. 什么是 GestureOverlayView ?简单点说其实就是一个手写绘图区;2. 什么是 GestureLibrary ?这个类是对手势进行保存、删除等操作的,一个存放手势的小仓库!3. 笔划是什么,字体笔画?是的,其实就是跟我们写字的笔划一个概念!4.什么是笔划类型?输入法手势操作中,笔划类型有两种;一种是:单一笔划,另外一种是:多笔划所谓单一笔划笔划就是一笔划画出一个手势,从你手指接触屏幕开始到你离开屏幕笔画就会立刻形成一个手势!一气呵成!而多笔划则是可以在一定紧凑时间内随意几笔划都可!然后超过这个紧凑时间后便会形成一个手势!先出项目截图,简单说下其功能和操作:【图1】【图2】图1界面中分为3块,从上到下依次是:TextView ,EditText,SurfaceView;然后在SurfaceView后面还有一个覆盖全屏的GestureOverlayView!图2界面是在创建好的手势中匹配手势的界面,这里很清晰看出来,找的很对~嘿嘿~先看下main.xml:view plaincopy to clipboardprint?.........10........20........30........40........50........60........70........80........90........100.......110.......120.......130.......140. (150)1.<?xml version="1.0"encoding="utf-8"?>2.<LinearLayout xmlns:android="/apk/res/android"3.android:orientation="vertical"android:layout_width="fill_parent"4.android:layout_height="fill_parent">5.<TextView android:id="@+id/himi_tv"android:layout_width="fill_parent"6.android:layout_height="wrap_content"android:text="@string/hello"7.android:textSize="15sp"android:textColor="#FFFFFF00"/>8.<EditText android:id="@+id/himi_edit"android:layout_width="fill_parent"9.android:layout_height="wrap_content"/>10.<RelativeLayout android:layout_width="fill_parent"11.android:layout_height="wrap_content"android:layout_weight="1">12.<com.himi.MySurfaceView android:id="@+id/view3d"13.android:layout_width="fill_parent"android:layout_height="fill_parent"/>14.<android.gesture.GestureOverlayView15.android:id="@+id/himi_gesture"android:layout_width="fill_parent"16.android:layout_height="fill_parent"android:layout_weight="1.0"/>17.</RelativeLayout>18.</LinearLayout>1.**2. *@author Himi3. *@输入法手势识别4. *@注意: android.gesture这个类在api-4(SDK1.6)才开始支持的!5. *@提醒:默认存到SD卡中,所以别忘记在AndroidMainfest.xml加上SD卡读写权限!6. */7.public class MainActivity extends Activity {8. private GestureOverlayView gov;// 创建一个手写绘图区9. private Gesture gesture;// 手写实例10. private GestureLibrary gestureLib;//创建一个手势仓库11. private TextView tv;12. private EditText et;13. private String path;//手势文件路径14. private File file;// 手势文件15. @Override16. public void onCreate(Bundle savedInstanceState) {17. super.onCreate(savedInstanceState);18. this.getWindow().setFlags(youtParams.FLAG_FULLSCREEN,19. youtParams.FLAG_FULLSCREEN);20. this.requestWindowFeature(Window.FEATURE_NO_TITLE);21. setContentView(yout.main);22. tv = (TextView) findViewById(R.id.himi_tv);23. et = (EditText) findViewById(R.id.himi_edit);24. gov = (GestureOverlayView) findViewById(R.id.himi_gesture);25. gov.setGestureStrokeType(GestureOverlayView.GESTURE_STROKE_TYPE_MULTIPLE);//设置笔划类型26. // GestureOverlayView.GESTURE_STROKE_TYPE_MULTIPLE 设置支持多笔划27. // GestureOverlayView.GESTURE_STROKE_TYPE_SINGLE 仅支持单一笔划28. path = new File(Environment.getExternalStorageDirectory(), "gestures").getAbsolutePath();29. //得到默认路径和文件名/sdcard/gestures30. file = new File(path);//实例gestures的文件对象31. gestureLib = GestureLibraries.fromFile(path);//实例手势仓库32. gov.addOnGestureListener(new OnGestureListener() { // 这里是绑定手写绘图区33. @Override34. // 以下方法是你刚开始画手势的时候触发35. public void onGestureStarted(GestureOverlayView overlay, MotionEvent event) {36. tv.setText("请您在紧凑的时间内用两笔划来完成一个手势!西西~");37. }38. @Override39. // 以下方法是当手势完整形成的时候触发40. public void onGestureEnded(GestureOverlayView overlay, MotionEvent event) {41. gesture = overlay.getGesture();// 从绘图区取出形成的手势42. if (gesture.getStrokesCount() == 2) {//我判定当用户用了两笔划43. //(强调:如果一开始设置手势笔画类型是单一笔画,那你这里始终得到的只是1!)44. if (event.getAction() == MotionEvent.ACTION_UP) {//判定第两笔划离开屏幕45. //if(gesture.getLength()==100){}//这里是判定长度达到100像素46. if (et.getText().toString().equals("")) {47. tv.setText("由于您没有输入手势名称,so~保存失败啦~");48. } else {49. tv.setText("正在保存手势...");50. addGesture(et.getText().toString(), gesture);//我自己写的添加手势函数51. }52. }53. } else {54. tv.setText("请您在紧凑的时间内用两笔划来完成一个手势!西西~");55. }56. }57. @Override58. public void onGestureCancelled(GestureOverlayView overlay, MotionEvent event) {59. }60. @Override61. public void onGesture(GestureOverlayView overlay, MotionEvent event) {62. }63. });64. //----这里是在程序启动的时候进行遍历所有手势!------65. if (!gestureLib.load()) {66. tv.setText("Himi提示:手势超过9个我做了删除所有手势的操作,为了界面整洁一些!"67. + " 输入法手势练习~(*^__^*)~ 嘻嘻!/n操作介绍:(画手势我设置必须画两笔划才行哦~)/n1." +68. "添加手势:先EditText中输入名称,然后在屏幕上画出手势!/n2.匹配手势:"69. + "在EditText输入/"himi/",然后输入手势即可! ");70. } else {71. Set<String> set = gestureLib.getGestureEntries();//取出所有手势72. Object ob[] = set.toArray();73. loadAllGesture(set, ob);74. }75. }76.}从以上代码中我们看出在创建手势之前,手写绘图区(GestureOverlayView)肯定先被创建出来,然后我们就可以在其区域中进行笔划绘画手势了,当然绘画手势前,我们也需要设置了笔划类型,也就是我一开始给大家介绍的~其后最重要的就是手写绘图区的手势监听器绑定,增加OnGestureListener这个监听器重写了四个函数,这里最重要的就两个函数:onGestureStarted 和 onGestureEnded ;手势开始和手势结束的监听函数!尤其是手势结束监听这个函数尤为重要,在其中我设置好几个条件语句,这么几个条件一方面是让大家了解Gesture中一些比较重要常用的方法,另一方面我要提醒各位童鞋:如果你设置笔划类型是多笔划类型的,那么理想状态下,应该是在一段紧凑时间内,不管你使用了几笔划来绘制手势,系统都应该在判定你在一定短暂时间内没有再进行笔划的时候才应该创建手势,并且系统响应此函数;其实错了,一开始我也这么想,但是发现,不管你设置的笔划类型是单一的还是多笔划当你手指离开屏幕,不管你当前是第几笔,Android都会去响应这个完成函数,so~ 我在这里调用手势Gesture类中的getStrokesCount()函数,这个函数会记录在紧凑时间内你绘制手势的笔划数,那么根据这个函数我们就可以解决手指离开屏幕总被响应的问题了,因为单一笔划类型永远这个值不会大于1!而if (event.getAction() == MotionEvent.ACTION_UP) {}写这个只是给大家演示第二个参数按键动作该怎么用;那么我们下面就来看如何创建一个手势:view plaincopy to clipboardprint?.........10........20........30........40........50........60........70........80........90........100.......110.......120.......130.......140. (150)1. public void addMyGesture(String name, Gesture gesture) {2. try {3. if (name.equals("himi")) {4. findGesture(gesture);5. } else {6. // 关于两种方式创建模拟器的SDcard在【Android2D游戏开发之十】有详解7. if (Environment.getExternalStorageState() != null) {// 这个方法在试探终端是否有sdcard!8. if (!file.exists()) {// 判定是否已经存在手势文件9. // 不存在文件的时候我们去直接把我们的手势文件存入10. gestureLib.addGesture(name, gesture);11. if (gestureLib.save()) {////保存到文件中12. gov.clear(true);//清除笔画13. // 注意保存的路径默认是/sdcard/gesture ,so~别忘记AndroidMainfest.xml加上读写权限!14. // 这里抱怨一下,咳咳、其实昨天就应该出这篇博文的,就是因为这里总是异常,今天仔细看了15. // 才发现不是没写权限,而是我虽然在AndroidMainfest.xml中写了权限,但是写错了位置..哭死!16. tv.setText("保存手势成功!因为不存在手势文件," + "所以第一次保存手势成功会默认先创" +17. "建了一个手势文件!然后将手势保存到文件中.");18. et.setText("");19. gestureToImage(gesture);20. } else {21. tv.setText("保存手势失败!");22. }23. } else {//当存在此文件的时候我们需要先删除此手势然后把新的手势放上24. //读取已经存在的文件,得到文件中的所有手势25. if (!gestureLib.load()) {//如果读取失败26. tv.setText("手势文件读取失败!");27. } else {//读取成功28. Set<String> set = gestureLib.getGestureEntries();//取出所有手势29. Object ob[] = set.toArray();30. boolean isHavedGesture = false;31. for (int i = 0; i < ob.length; i++) {//这里是遍历所有手势的name32. if (((String) ob[i]).equals(name)) {//和我们新添的手势name做对比33. isHavedGesture = true;34. }35. }36. if (isHavedGesture) {//如果此变量为true说明有相同name的手势37.//----备注1-------------------//gestureLib.removeGesture(name, gesture);//删除与当前名字相同的手势38./*----备注2-----------------*/gestureLib.removeEntry(name);39. gestureLib.addGesture(name, gesture);40. } else {41. gestureLib.addGesture(name, gesture);42. }43. if (gestureLib.save()) {44. gov.clear(true);//清除笔画45. gestureToImage(gesture);46. tv.setText("保存手势成功!当前所有手势一共有:" + ob.length + "个");47. et.setText("");48. } else {49. tv.setText("保存手势失败!");50. }51. ////------- --以下代码是当手势超过9个就全部清空操作--------52. if (ob.length > 9) {53. for (int i = 0; i < ob.length; i++) {//这里是遍历删除手势54. gestureLib.removeEntry((String) ob[i]);55. }56. gestureLib.save();57. if (MySurfaceView.vec_bmp != null) {58. MySurfaceView.vec_bmp.removeAllElements();//删除放置手势图的容器59. }60. tv.setText("手势超过9个,已全部清空!");61. et.setText("");62. }63. ob = null;64. set = null;65. }66. }67. } else {68. tv.setText("当前模拟器没有SD卡 - -。