超极本™ 设备与平板电脑 Windows* 8 触控开发者指南

摘要


本指南介绍应用开发人员在面向超极本™ 设备开发应用时所需的 API。所涉及的应用运行于 Windows* 7、Windows* 8+(8 和 8.1 版本)和 Windows* 商店应用,以及运行于 web 浏览器的应用。

本指南还介绍用户对于手势的共同期待,并提供关于开发出色触控界面的一些指南。

介绍


鉴于很多触控超极本设备已经推出,软件开发人员希望开发面向触控输入的软件。完全面向触控功能的应用必须满足以下标准:

  • 使用频率最高的控制至少为 40X40 像素,大小足够指尖识别。
  • 支持相关手势(摇拍,缩放,旋转,双指点击,按压,和单点),在接触点产生效果。
  • 当执行摇拍、缩放和旋转操作时,该应用提供平滑、迅捷的可视化反馈,因此交互感很强。

为了集成触控功能,开发人员无论是编写新应用还是升级现有应用,本指南都会大有帮助。

如需深入了解如何开发触控应用,请参考 MSDN 文章:触控交互设计。注:请参考 MSDN 使用条款的许可规定。

硬件要求


可供消费者选择的触控设备很多。要想确保开发的应用在每一款设备上都交付自然体验,开发人员面临巨大挑战。总体而言,触控应用应当能够在任一目标设备上运行,同时充分利用每款设备的触控功能。超极本设备代表着高端触控功能,应当作为应用的触控界面的设计点。

带触控屏的超极本设备已经于 2011 年推出:

  • 第二代英特尔® 酷睿™ 处理器家族(代号 Sandy Bridge)。
  • 第三代英特尔® 酷睿™ 处理器家族(代号 Ivy Bridge)。
  • 第四代英特尔® 酷睿™ 处理器家族(代号 Haswell)。

下文中所指的目标平台均为触控超极本系统。面向该设备而设计的软件也可支持其它运行同一操作系统的触控设备。

Ultrabook 设备的操作环境


今天的应用设计应慎重考虑客户最常使用的环境以及应用最适合的环境。无论应用是面向 Windows 8 桌面还是面向 Windows 商店,开发人员都应了解哪些界面是适用的。

如果应用是面向 Windows 商店应用,则必须使用 WinRT API。如果应用面向 Windows 8+ 桌面环境,则选择多一些:来自 Windows 7 的传统 API 以及面向触控的最新 Windows 8+ API。这些界面将在以下章节详细讨论。其它选项是面向 web 应用开发的。面向 web 浏览器的触控界面也将在下文予以讨论。

触摸交互:指针、手势和操作


触控输入有不同级别的解释。指针事件代表着独立的触控接触点,因此是最基本的。手势和操作事件都是基于指针事件的。手势事件是采集简单按住手势的简单方法。操作事件是针对触控交互,后者使用物理手势模拟用户界面元素的物理操作。当用户与屏幕上的用户界面元素交互时,操作事件可提供更为自然的体验。可用触控界面对着三种不同级别的解释提供不同级别的支持。

请参考 MSDN 手势、操作和交互指南

指针交互

指针事件是来自输入设备的简单、特殊输入或“接触”,例如,鼠标,手写笔,单指,或多指。当接触完成后,系统一旦检测到这一接触信息就立即创建一个指针,当该指针离开检测区域后,系统随即销毁或删除该指针。在多触控输入场景中,每个接触点都是一个独立指针。表 1 是运行 Windows 7 和 Windows 8+ 的超极本设备可用的基本指针事件的检索界面。

操作系统兼容性

触控界面

备注

Windows* 7(桌面)

WM_TOUCH

  • 还兼容 Windows 8+ 桌面环境。
  • 同时触控的最大数量受硬件限制。
  • 无内建手势识别。
  • 必须调用 RegisterTouchWindow 因为 WM_TOUCH 消息不是默认发送的。

仅 Windows 8+(桌面)

WM_POINTER

  • 仅适用 Windows 8+ 桌面环境。
  • 默认状态下,Windows 8+ 动画和交互反馈是自动生成的并用于下一步处理。

Windows 商店应用

PointerPoint

  • 仅适用 Windows 商店应用。

表 1. 面向超极本™ 设备的指针 AP

面向 Windows 7 和 Windows 8+ 的触控界面:

请参考 MSDN 通用用户交互指南文档。


Windows 7 和 Windows 8 桌面触控界面:WM_TOUCH
WM_TOUCH 消息用于指示手指或笔在屏幕上接触而产生的一个或多个指针。

示例代码:英特尔开发人员专区:面向 Windows 桌面的触控(该示例包括自定义手势识别。)

指南:


Windows 8 和 Windows 8.1 桌面触控界面:WM_POINTER
WM_POINTER 消息是直接操作 API 的组成部分,并且仅限于 Windows 8+ 桌面。该界面可用于采集独立触控指针、手势和操作。WM_POINTER 消息将在“操作与手势交互”章节详细讨论。

请参考 MSDN:直接操作 API


Windows 8.1 桌面增加了使用触控板的直接操作支持:

请注意,本次更新时,Windows 8.1 桌面支持信息还会更改,MSDN 文档尚未完全体现。

Windows 现代 UI 触控界面:PointerPoint
PointerPoint 级别是 Windows Runtime 环境的组成部分,仅兼容 Windows 商店应用。它提供与单个鼠标、手写笔或触控接触相关的输入指针的基本属性。MSDN 提供示例代码帮助开发人员入门 PointerPoint 界面。

操作和手势交互

手势事件用于管理静态手指交互,例如,轻击和按住。双点和右点从这些基本手势演变:

  • 手势:输入设备上的物理操作或动作可以由一个或更多手指、手写笔或鼠标产生。
  • 操作:对象对手势即时、持续产生的响应。例如,滑动手势引起对象以某种方式移动。
  • 交互:操作如何解释以及该操作产生的命令或动作。例如,滑动和扫动手势相似,但是结果不同,这取决于是否超出一定的距离范围。

手势

类型

描述

按住

静态手势

检测到单一接触,但是不移动。按住产生详细信息,引起显示,但是无动作。

点击

静态手势

单指触摸屏幕,然后抬起。

转动

操作手势

两个或更多手指触摸屏幕,并以顺时针或逆时针呈弧形转动。

滑动

操作手势

一个或多个手指接触屏幕,并向同一方向移动(也称摇拍)

扫动

操作手势

一个或多个手势接触屏幕,向同一方向短暂移动。

夹捏

操作手势

两个或更多手指接触屏幕,然后缩小距离。

拉伸

操作手势

两个或更多手指接触屏幕,然后增加距离。

表2. 用于操作交互的基本手势

操作系统兼容性

手势界面

备注

Windows* 7

Windows 8+(桌面)

WM_TOUCH + IManipulationProcessor

  • 这一整合为开发人员提供了 Windows 8/8.1 桌面独有的 WM_POINTER API 的功能。
  • 最大接触点数取决于硬件。

Windows 7

Windows 8+(桌面)

WM_GESTURE + GESTUREINFO 结构

  • 最大两个同时接触点
  • 无同时手势
  • 如果应用需要的复杂操作数量超过 WM_GESTURE 消息的极限,则需要使用 WM_TOUCH 界面编写自定义手势识别程序。

Windows 8+(桌面)

WM_POINTER

Windows 现代 UI

PointerPoint

Windows 8.1

GetPointerInputTransform

  • 最新直接操作 API。适用于触控板操作。

表 3. 面向超极本™ 设备的手势界面

MSDN 参考资料:

交互

描述

按住了解

显示详细信息和视图。

点击主操作

启动主操作,例如,启动应用或执行命令。

滑动摇拍

主要用于摇拍交互,也用于移动、绘画或书写。也可用于通过滑擦定位小而密集的元素(在相关对象上滑动手指,如旋转按钮)。

扫动选择、命令、和移动

短距离滑动手指,与摇拍方向垂直,选择列表或网格中的对象。

夹捏和拉伸缩放

通过语义缩放,该操作不仅可调整大小,还可跳转至开始、结尾和内容的任何位置。语义缩放控制提供多组项目的缩略图以便迅速返回打开。

转动旋转

使用两个或多个手指旋转对象。

从边缘扫动显示应用命令

从屏幕的底部或顶部边缘扫动显示应用命令。

从边缘扫动显示系统命令

从屏幕右边缘扫动显示系统命令的“超级按钮”。从左边缘扫动循环显示当前运行的应用,从顶部边缘向屏幕底部滑动关闭应用。从顶部边缘向下、向左或向右滑动可将当前应用分割至屏幕的对应侧。

表 4. 触控交互的标准预期交互和效果

手势

描述

悬浮显示

用户可对一个元素执行悬浮操作获取更多信息或视图,而不执行实质性操作。

单指点触主操作

打开主操作(如启动应用)。

双指点触右击

使用两个手指同时点触显示应用的工具栏和全局命令,或者在一个元素上选中显示应用工具栏和语境命令。

双指滑动摇拍

主要用于摇拍操作。

夹捏和拉伸缩放

用于调整大小和语义缩放。

单指按压和滑动重排

拖放元素。

单指按压和滑动选择文本

在可选择的文本中按压并滑动进行选择。使用双点选择单词。

单指按压和滑动选择文本 – 用于系统命令

  • 从屏幕右边缘扫动:显示系统命令的超级按钮
  • 左侧和右侧点击区域:相当于鼠标的左键和右键。

表 5. 触控板的基本手势 – Windows* 8.1

Windows 7 桌面的操作和手势交互解释
IManipulationProcessor 界面可结合使用 WM_TOUCH API 为用户界面对象添加翻译、旋转、缩放和惯性。二者结合提供的功能类似于 WM_POINTER 提供的手势识别特性。一旦启动操作处理器,操作功能就随触控手势一起启动。

示例代码:

WM_GESTURE 消息有一个称为 GESTUREINFO 的结构,可用于解释手势和操作。针对 WM_GESTURE 的 MSDN 网页举例介绍了如何使用 GESTUREINFO 结构获取手势信息。

请注意 WM_GESTURE 存在限制,例如,同时触控输入的最大数量为 2 个,而且不支持同时手势。如果应用需要更多功能并且需要支持 Windows 7 桌面,请使用 WM_TOUCH 界面或者编写自定义手势识别程序,详情请参考下文章节“自定义手势识别”,或者使用 WM_TOUCH 操作处理器界面。

英特尔开发人员专区示例代码(WM_GESTURE API + GESTUREINFO:示例应用:桌面触控 

如需深入了解如何开发触控应用,请参考 MSDN 文章:触控交互设计

Windows 8+ 桌面应用的操作和手势交互处理
仅限于 Windows 8 桌面的应用可使用直接操作 API (WM_POINTER 消息)。指针消息发送至内部交互环境对象,后者执行操作识别,无需实施自定义手势识别程序。这一回调基础设施可管理所有与跟踪接触相关的交互。

直接操作用于管理操作和手势交互,并支持两种模式的输入处理:

  1. 自动/独立:Window 消息由直接操作在委托线程上自动拦截并处理,无需运行应用代码,因此独立于应用。
  2. 手动/依赖:Window 消息由运行用户界面线程的 window 进程接收,然后调用直接操作处理该消息,因此依赖于应用。

手势可使用直接操作采集,并由系统处理输入。

请参考 MSDN 入门:直接操作,了解与直接操作相关的典型任务所需的 API 调用。

Windows 8 商店应用操作和手势交互处理
GestureRecognizer API 用于处理指针输入从而处理操作和手势事件。通过 PointerPoint 方法返回的每个对象均用来向 GestureRecognizer 馈进指针数据。该手势识别程序采集并处理指针输入,并处理静态手势事件。如需了解如何创建 GestureRecognizer 对象并启用该对象的操作手势事件,请参考 MSDN GestureRecognizer 网页(见下文)。

MSDN 参考资料:

英特尔开发人员专区示例代码:Sample Application: Touch for Windows* Store

Windows 8.1 商店应用的直接操作支持
Windows 8.1 在触控板手势基础上增加了直接操作。请注意 ScrollViewer 级别将会升级,因此,应用将不再支持 Windows 8 中可用的 UIElementPointerWheelChanged 事件。

MSDN 参考资料:

MSDN 示例代码:输入:GestureRecognizer 手势和操作示例(Windows 8.1)

自定义手势识别

如有可能,请使用内建手势识别程序(见表 3)。如果提供的手势和操作界面缺少所需功能,或者应用需要更加快速地区分点触和手势,则可能需要编写自定义手势识别软件。在这种情况下,当与应用的用户界面元素直接交互时,用户期望拥有直观的体验。为了确保用户操作的一致性以及容易识别,强烈建议自定义交互基于标准控制。使用自定义交互的前提条件是:明确界定要求,并且基本交互无法支持应用所需的功能。请参考表 4 中列示的面向触控交互的通用、预期交互及其效果。

英特尔开发人员专区代码示例(支持自定义手势识别的 WM_TOUCH):Windows 桌面触控

Web 浏览器的触控支持

运行 web 浏览器的应用也可使用触控输入;浏览器不同,支持级别有所不同。由于 web 浏览器更新很快,因此,最好首先检测支持的特性而非特定浏览器。一旦选定 Internet Explorer*(IE)11、基于 Webkit* 构建的浏览器、或需要支持的其它浏览器,则特性检测就是一个更加有效的方法。特性检测需要的维护较少,原因如下:

  • 新浏览器发布,现有浏览器经常更新。现有代码可能不兼容新浏览器版本。设计浏览器检测代码时所支持的标准与特性可能不被更新后的浏览器支持。
  • 新设备经常采用新版本的浏览器,因此浏览器检测代码必须不断审查以支持新浏览器。为每款浏览器开发自定义实施极其复杂。
  • 很多浏览器支持修改用户代理串,加大了浏览器检测的难度。

WebKit 支持 Apple Safari* 和 Google Chrome*,很快 Opera 浏览器也将采纳。Internet Explorer 10 不使用 WebKit;然而,WebKit 和 IE 10 均基于文档对象模型(DOM)3 级核心规范。为了审查与触控事件相关的标准,请参考该标准的触控事件版本 1,更新于 2013 年 1 月。

参考:

IE 10 有自己的触控界面,处理触控事件时必须调用。使用带用户代理属性的导航条判断浏览器是否支持所需特性。以下示例表明浏览器是 Internet Explorer。

用例:
<script type="text/JavaScript">
If (navigator.userAgent.indexOf(“MSIE”)>0)
    { 
         // Run custom code for Internet Explorer.
    }
</script>

图 1. 判断浏览器是 Internet Explorer* 的片段

使用 hasFeature 方法判断该浏览器是否支持某个特性。例如,这里就是如何判断浏览器是否支持触控事件(也适用 IE 10):
var touchSupported = document.implementation.hasFeature("touch-events","3.0");

其中,“touch-events”是我们检测的特性,“3.0”是 DOM 规范级别。这时应用可检测以下触控事件:Touchstart,touchend,touchmove,和 touchcancel

参考:hasFeature 方法

为了使用 WebKit 架构浏览器(Chrome,Safari,等)处理触控事件,请直接设置以下三个事件以包括主要输入状态:

canvas.addEventListener( ‘touchstart’, onTouchStart, false );
canvas.addEventListener( ‘touchmove’, onTouchMove, false);
canvas.addEventListener( ‘touchend’, onTouchEnd, false);

对于 Internet Explorer,请参考下列 MSPointer 事件:

canvas.addEventListener( ‘MSPointerDown’, onTouchStart, false );
canvas.addEventListener( ‘MSPointerMove’, onTouchMove, false);
canvas.addEventListener( ‘MSPointerUp’, onTouchEnd, false);

同理,也有手势事件检测工具。它们分别是 gestureStart、gestureChange 和 gestureEnd (对于非 IE 10 浏览器)。

下载处理 DOM 指针事件的 MSDN 示例代码:输入 DOM 指针事件处理示例

Internet Explorer 10 及其与 Windows 7 的兼容性

IE 10 不使用 WebKit,而是基于 DOM 3 级事件、HTML5 和进程事件标准。本节介绍 IE 10 及其与 Windows 7 的交互方法。

标准:

对于以下文档对象模型(DOM)事件,Internet Explorer 10 在 Windows 7 环境中处理触控和笔输入的方法是模拟鼠标输入:

  • MSPointerCancel
  • MSPointerDown
  • MSPointerMove
  • MSPointerOver
  • MSPointerUp

IE 10 在 Windows 7 环境中不处理以下 DOM 手势事件:

  • MSGestureChange
  • MSGestureEnd
  • MSGestureHold
  • MSGestureStart
  • MSGestureTap
  • MSManipulationStateChanged

界面

Windows* 7

MSVS 2010

Windows 8

MSVS 2012(桌面)

Windows 8 现代 UI

备注

MSGESTURE

 

  • 轻松获取高级手势(保持,摇拍,点触),无需单独采集每个指针事件

MSPOINTER

 

  • 文档对象模型(DOM) 核心的组成部分
  • getCurrentPointgetIntermediatePoints 仅检索 PointerPoint 对象集,并且仅限于 Windows 8。

 6. 面向 Internet Explorer* 10 的触控界面

如需深入了解如何面向 IE 10 开发触控 web 应用,请参考 MSDN 文档:Internet Explorer 10 开发人员指南

MSDN 示例代码:输入:操作和手势(JavaScript)

 

Internet Explorer 11

IE 11 将增加以下触控增强特性/ API:

  • 面向鼠标、键盘、触控板和触控的直接操作包括硬件加速的摇拍、缩放以及各种输入类型。
  • 更新现有 MSPointer API 以体现最新备用推荐规范。请注意,本文档撰写之际,IE 11 正在审查中。一旦发布,这款浏览器将支持 unprefixed 指针事件。
  • 新 API,msZoomTo 方法。这一新方法滚动和/或缩放元素至某个特定位置,并且使用动画。注:msZoomTo 不支持 Windows 7。

如需深入了解如何面向 IE 11 开发触控 web 应用,请参考 MSDN 文档:Internet Explorer 11 开发人员指南

MSDN 示例代码:输入:操作和手势(JavaScript*)

IE 10 和 IE 11 还包括层叠式数据表以及适用于触控的特性。下表汇总了 Internet Explorer 版本中支持触控输入和手势识别的控制。

IE 10 和 IE 11 的滚动/缩放属性

触控屏

触控板

鼠标

键盘

-ms-scroll-snap-points-x-ms-scroll-snap-points-y-ms-scroll-snap-type-ms-scroll-snap-x-ms-scroll-snap-y

IE 10+

IE 11

IE 11

IE 11

-ms-content-zoom-chainingmsContentZoomFactor-ms-content-zooming-ms-content-zoom-limit-ms-content-zoom-limit-max-ms-content-zoom-limit-min-ms-content-zoom-snap-ms-content-zoom-snap-points-ms-content-zoom-snap-type-ms-scroll-chaining-ms-scroll-rails

IE 10+

IE 11

--

--

-ms-overflow-style-ms-scroll-limit-ms-scroll-limitXMax-ms-scroll-limitXMin-ms-scroll-limitYMax-ms-scroll-limitYMin

IE 10+

IE 10+

IE 10+

IE 10+

-ms-scroll-translation

--

--

IE 10+

--

表 7. Internet Explorer* 版本 10 和 11 的滚动和缩放属性

识别触控功能

无论是原生应用还是 web 应用,开发人员都需要检查硬件触控功能,以确保应用合理配置用户界面。使用以下方法测试触控功能。

Windows 7 和 Windows 8 桌面

面向 Windows 7 或 Windows 8 桌面的应用可调用 GetSystemMetrics,参数为 SM_DIGITIZER。以下代码片段是触控示例,也可从英特尔开发人员专区下载:Windows 桌面触控

参考:

// Check for Touch support
    // Get the Touch Capabilities by calling GetSystemMetrics
    BYTE digitizerStatus = (BYTE)GetSystemMetrics(SM_DIGITIZER);
    // Hardware touch capability (0x80); readiness (0x40)
    if ((digitizerStatus & (0x80 + 0x40)) != 0) //Stack Ready + MultiTouch
    {
        RegisterTouchWindow(m_pWindow->GetHWnd(), TWF_WANTPALM);
    }

 2. Windows* 7 环境中识别触控功能的示例

请注意:GetSystemMetrics 可用来查找可用触控点的最大数量:
BYTE nInputs = (BYTE)GetSystemMetrics(SM_MAXIMUMTOUCHES);

Windows 8(Windows 商店应用)

使用 TouchCapabilities 级别判断 Windows 商店应用的触控功能。以下代码片段来自 MSDN 代码示例使用说明文档:输入:设备功能示例

参考:

void SDKSample::DeviceCaps::Touch::TouchGetSettings_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
    Button^ b = safe_cast<Button^>(sender);
    if (b != nullptr)
    {
        TouchCapabilities^ pTouchCapabilities = ref new TouchCapabilities();
        Platform::String^ Buffer;

        Buffer = "There is " + (pTouchCapabilities->TouchPresent != 0 ? "a" : "no") + " 
              digitizer present\n";
        Buffer += "The digitizer supports " + pTouchCapabilities->Contacts.ToString() + " 
              contacts\n";

        TouchOutputTextBlock->Text = Buffer;
    }
}

 3. Windows*用户界面触控功能识别示例

Web 应用

对于 Internet Explorer,请使用下述 msMaxTouchPoints 属性:
     测试触控功能硬件:
    If (navigator.msMaxTouchPoints) {…} 

    测试多触控功能硬件:
    If (navigator.msMaxTouchPoints >1) {…} 

    获取硬件支持的触控点的最大数量:
    Var touchPoints = navigator.msMaxTouchPoints; 

对于 Chrome 和 Safari,请使用下述方法(与上同但是使用 maxTouchPoints 替换 msMaxTouchPoints):
    var result = navigator.maxTouchPoints;

从 web 应用角度测试触控设备有点复杂。有些功能支持特定浏览器,但是加上触控以后就不再支持;如果浏览器支持触控,即使设备不具备触控功能也可以支持。

请注意:MaxTouchPoints 在运行 Windows 7 的 IE 10 (桌面)中将返回 0。

参考:

面向触控超极本设备的用户界面设计

面向超极本设备的应用可能需要处理点触、摇拍和缩放等手势。支持触控的应用除了将原始指针数据发送至手势检测以外几乎没有任何操作。

设计新应用时应考虑触控作为主要输入方法的情况。鼠标和手写笔支持需要更多工作;然而,软件开发人员在设计面向触控的应用时应考虑其它几个因素。

因素

触控

鼠标/手写笔

精度

 

  • 手指的接触面积大于单一 x-y 坐标。
  • 接触区域的形状随动作而变化
  • 无鼠标传感器来帮助定向
  • 鼠标/手写笔的 x-y 坐标精度高
  • 键盘焦点明确

 

人体分析

 

  • 手指移动不精确
  • 触控面上的某些区域难以操作
  • 手指操作后对象变得模糊
  • 鼠标/手写笔更容易执行直线位移
  • 鼠标/手写笔可触及屏幕任何部位
  • 间接输入设备不构成障碍

对象状态

 

  • 触控使用双态模式触控表面要么接触要么不接触。不存在可产生附加视觉反馈的悬浮状态。
  • 有三个可用状态:开启,关闭,悬浮(焦点)

丰富交互

 

  • 多触控 – 多输入点(指尖)可用。
  • 仅支持单一支持点。

表 8. 开发触控应用的考虑因素

软件开发人员应提供相应的视觉反馈,以便用户在交互过程中识别、了解和适应应用与操作系统的响应。视觉反馈对用户而言十分重要,因为它可帮助用户了解交互是否成功,从而改进传感器控制。它有助于减少错误,帮助用户了解系统和输入设备。

触控应用开发资源


英特尔开发人员专区的相关文章:

  1. 比较触控编码技术 – Windows* 8 桌面触控示例
  2. Windows* 8 触控应用示例研究
  3. 面向 Windows* 8 商店的触控代码示例
  4. 面向 Windows* 8 桌面的触控代码示例
  5. 将 Win32 应用移植到 Windows 8 桌面
  6. 触控屏场景下的实时战略游戏

MSDN 的相关文章

  1. Windows 7 触控输入编程指南
  2. 架构概述(Windows 7)
  3. 故障排查应用
  4. 在非托管代码中添加操作支持
  5. Windows 触控示例
  6. 在 Windows 8* 中构建高级触控应用(视频)
  7. Windows 8 SDK
  8. 输入:触控碰撞测试示例
  9. 桌面应用开发文档(Windows)
  10. Windows 触控手势概述(Windows)
  11. Windows 触控消息入门(Windows)
  12. Get PointerTouchInfo 功能(Windows)
  13. (MSDN) Internet Explorer 10 开发者指南
  14. (MSDN) Internet Explorer 11 开发者指南
  15. (MSDN) 触控板交互
  16. (MSDN) 滚动和缩放:触控和其它输入
  17. (MSDN) 使用条款

总结


对于准备开发触控应用的开发人员而言,无论应用是本机运行还是面向 web,都需要了解哪些 API 是可用的。该指南介绍了以下环境中可用的界面:Windows 7,Windows 8+ 桌面,Windows 现代 UI,以及运行于 web 浏览器中的应用。鉴于手势和操作支持 Windows 7,应用开发人员会发现 Windows 8+ API (它们面向桌面和/或 Windows 商店应用)可提供最佳的自动手势识别。

Windows 8.1 和 IE 11 增加了触控板 API 和交互。面向 Windows 8 桌面、Windows 8 商店应用和 IE 11 的手势、操作与指针而构建的很多现有 API 已经得到升级。

编写触控 web 应用的开发人员需要针对 IE 10+ 审查自己的代码,因为 IE 10+ 有自己的界面而且处理触控、手势和操作时必须使用该界面。其它基于 Webkit 的浏览器也基于 DOM 3 级标准,支持触控和手势事件。

本指南还介绍了通用手势和操作交互,并提供了开发触控应用的一些原则。

关于作者


Gael Hofemeier 是英特尔公司传播者应用工程师。其主要工作是提供技术内容供为英特尔® 架构编写软件的开发人员使用。除了编写内容,她还在英特尔开发人员专区负责主持商用客户端论坛。

参看 Gael 博客主页

Intel、英特尔、Ultrabook、超极本、Core、酷睿和 Intel 标识是英特尔在美国和/或其他国家的商标。
英特尔公司 © 2013 年版权所有。所有权保留。
* 其他的名称和品牌可能是其他所有者的资产。

附件

下载 ultrabook-touch-developer-guide-1.pdf (945.55 KB)

Para obter informações mais completas sobre otimizações do compilador, consulte nosso aviso de otimização.