在触屏UI应用程序中给予触摸反馈

来源:互联网 发布:陕西被网络大V 编辑:程序博客网 时间:2024/05/16 15:30

转自:http://wiki.forum.nokia.com/index.php/%E5%9C%A8%E8%A7%A6%E5%B1%8FUI%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E4%B8%AD%E7%BB%99%E4%BA%88%E8%A7%A6%E6%91%B8%E5%8F%8D%E9%A6%88

CS001164

 

  • 开发伙伴平台:

S60 5th Edition

 

  • 详细描述

触摸反馈是在触摸屏幕交互成功后给予用户一种物理反馈(震动)。我们可以在注册时增加,修改或移除反馈区域。在注册时可以选择打开此功能,MTouchFeedback可以取得触摸反馈示例的指针。

下列代码自签名即可执行。

Contents

 [hide]
  • 1 MMP
  • 2 头文件
  • 3 源文件
  • 4 后记

MMP

需要下列链接库和能力:

CAPABILITY  None       
 
LIBRARY touchfeedback.lib

 

头文件

需要包含两个头文件

#include <touchfeedback.h>
#include <touchlogicalfeedback.h>
 
class CImageConverterContainer : public CCoeControl,
public MCoeControlObserver, public MAknLongTapDetectorCallBack
{
...
private:
MTouchFeedback* iTouchFeedBack;
...
}

 

源文件

// Create an instance of touch feedback
void CImageConverterContainer::ConstructL(const TRect& /*aRect*/)
{
...
iTouchFeedBack = MTouchFeedback::Instance();
iTouchFeedBack->SetFeedbackEnabledForThisApp(ETrue);
...
}
 
// Give some vibra to the user when a pointer down event occurs
void CImageConverterContainer::HandlePointerEventL(const TPointerEvent& aPointerEvent)
{
...
if (aPointerEvent.iType == TPointerEvent::EButton1Down)
{
// Give feedback to user (vibration)
iTouchFeedBack->InstantFeedback(ETouchFeedbackBasic);
}
...
}

MTouchFeedback::InstantFeedback()的参数

*  ETouchFeedbackNone      - Use for disabling feedback for some areas of the
* window when using area registry.
*
* ETouchFeedbackBasic - Use as default feedback for pen down events.
* For example, pressing a button or tab.
*
* ETouchFeedbackSensitive - Sensitive feedback situations
* where the triggering action is not very
* important (e.g. change focus in list), or when
* there can be a large amount of feedback in
* a short time (e.g. text selection which gives
* feedback on every new selected character).
* Also used for scrolling and dragging.

 

后记

当使用触摸笔或手指划过按下屏幕时即可得到震动反馈。

原创粉丝点击