ID | Creation date | November 25, 2008 | |
Platform | S60 5th Edition | Tested on devices | |
Category | Symbian C++ | Subcategory |
Keywords (APIs, classes, methods, functions): CCoeControl::HandlePointerEventL(),
TPointerEvent::EButton1Up, TPointerEvent::EButton1Down, TPointerEvent::EDrag |
Overview
S60第五版平台支持触摸屏,因此提供了更强大的应用程序界面特性。 如果一个界面过分复杂繁琐,有很多弹出菜单和工具栏按钮,那么对用户来说就十分讨厌和不便。甚至只是简单选择一个菜单或按一个工具栏按钮,都得十分小心的看着程序。
触摸界面可以帮助减少程序操作所需动作,例如将程序主要功能映射到触摸动作上。
基本的触摸动作包括如下:
上下/下上,左右/右左,右上到左下/左下到右上,以及右下到左上/左上到右下。当程序的主要功能都映射到触摸动作之后,用户就不需要盯着程序界面了。例如,当在媒体播放器中左右滑动就会切换到下一首,右左移动就会切换到上一首。
为了简化手势动作的类型,我们将基本的手势假设为他们的开始和结束位置。这样知道了他们的相对位置就可以推算手势类型了。此外,使用触摸手指也可以丰富用户体验(这样将菜单和按钮解放出来做其他事情)
八个基本的触摸手势
四个用来识别触摸类型的基本区域
前提
下列代码示例可以在触摸手机上运行,如果要检查是否支持笔触,可以调用knLayoutUtils::PenEnabled()方法。为了简化问题,这个程序假设手机可以支持触摸界面。
MMP文件
LIBRARY avkon.lib euser.lib
CAPABILITY could be self-signed
头文件
源文件
限制
触摸手势很容易识别,只有8个基本类型可以判断
后记
基本的手势动作都能映射到所需的程序功能上
相关资料