【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Windows 8 用户界面的主旋律

  • 2011-09-15
  • 本文字数:2502 字

    阅读完需:约 8 分钟

“内容高于窗口部件”是 Windows 8 的格言。Windows 第一次把整个屏幕全部用于显示应用程序的内容,默认没有窗口边框、菜单、工具条这些东西。应用程序内的功能,像配置之类,被藏在“应用程序条”里面,当用户需要的时候才滑入视图范围。

言外之意是强调把“每一颗像素”都贡献给运行中的应用。在 Metro 设计下,界面上没有时钟,没有任务栏,没有通知区。不管哪个应用程序在运行,都会默认占据全部屏幕。当然如果用户希望同时看到两个应用,那也可以各占半边屏幕。

Windows 标准的窗口外框操作被屏幕边缘的手势取代。屏幕左侧边缘成了后退按钮,一般用于返回上一个应用程序。右侧边缘打开“charms”菜单,内含应用程序或者系统插件如搜索、分享等。上下边缘都是前面提过的"应用程序条"。

大多数 Metro 风格的应用程序一打开就是所谓的“Grid Application”布局。在这样的布局里,首先看见的就是放在一个个小格子里的内容。这种风格的应用没有任何内部的窗口框架和部件,所有的交互都直接针对内容本身。

快速、流畅

触摸型应用把性能表现放在很重要的位置。鼠标操作多少有些间接的东西引开用户的注意,而触摸型应用必须立即响应任何交互行为。

Windows 8 有一套系统动画。动画库已经准备好了大多数控件需要的东西,基本不需要投入开发精力。

Windows 8 将引入一套“触摸语言”。内中包含的手势虽然不多,但预计所有应用都会支持这种“语言”。在这套框架下多点触摸变得很基本,用户可以用一根手指摁住物体,同时另一根手指滚动屏幕。相比鼠标同一时间只能操作一个对象是很大的进步。

模态输入和延时输入开始淡出 Windows 8。例如选取一个物体只需要用手指划过去就行,不像以前还要“按下并保持”或者切换到带选择框的显示模式。

应用内导航有一个关键概念叫“Semantic Zoom”。当你放大、缩小 UI 的时候,它不仅是改变大小而已,还会改变显示的内容。在日历程序里面“放大”就会看到某天的情况,再放大就到了某个约会的情况;而“缩小”就会变成周视图和月视图。

Metro 应用一律要求在相同的界面内平等支持触摸操作和鼠标操作。用户将混用触摸、鼠标、键盘来操作,一切都取决于他们刚好在用什么样的设备。Microsoft 假设所有的桌面 PC 都带触摸屏,而所有的平板设备都可以接上鼠标和键盘。为了简化操作和开发,系统内建了一些通用的鼠标功能。例如右键点击将打开应用程序条和其他的上下文相关命令。

屏幕分辨率

所有应用程序必须支持的基本分辨率大小是 1024x768。这也是 Windows 8 支持的最低屏幕大小,所以应用程序无需顾虑更低的分辨率。

其次要求应用程序支持宽屏分辨率 1366x768。一般来说这个大小跟基本分辨率无甚区别。屏幕必须至少达到这个宽度,才能支持下一种模式——Snap View。

所有应用一律要求支持 Snap View。“收起视图”只有 320 像素宽,但应用必须在这个面积内显示用户想知道的一切信息。用户要能在标准视图和“收起视图”之间平滑切换,同时不能丢失视图切换前的位置。

竖屏模式是可选的。Microsoft 决定不强求,因为大多数桌面机和笔记本不好把屏幕转 90 度。不过对于大多数应用来说,能支持是好事。

契约和应用集成

应用集成是 Windows 8 的另一主旋律。操作系统对外公开一套通用功能的契约,比如搜索、分享等功能。

每个应用程序都应该实现分享契约中关于信息来源的那一半。如此才能快速、方便地发送信息给其他应用。“分享”不限于邮件和 Twitter;分享的对象可以是翻译程序、笔记程序,反正你以前会往里面“粘贴”的,都可以。只要实现了信息源契约,应用就自动与所有的分享目标兼容。

搜索契约也很值得关注。用户在“search charm”里面输入查询内容,然后触摸应用程序,就会有一块屏幕空间给它显示结果。因为应用列表始终可见,所以用户可以快速切换到不同的搜索结果。

搜索契约不是给应用程序内部搜索准备的,比如 PDF 阅读器的查找对话框那种。它针对的是那种把搜索页面放在最高位置的应用,比如菜谱应用、维基百科应用这一类。工具程序一般不需要实现搜索契约。

数据采集契约促成应用、服务的数据共享。与其下载数据文件到本地硬盘,应用可以直接从别的应用请求数据。今天的应用要实现 Web 服务接口才能访问各种服务,与之相比,数据采集契约的实现比较透明。如果你的应用支持采集契约,那么就可以从用户安装的所有采集源接收数据。

Live Tiles

Tiles 不是图标,它们是应用的延伸。即使应用已经关闭,Tiles 会给人留下应用还在运行的印象。向用户显示他所关心的信息,可达到唤起用户情感回应的目的。个人化的应用显示用户搜集的图片效果正好,而金融方面的应用不妨显示用户投资组合中的股票报价。

Tiles 也不是桌面小插件,它们大多只有唯一的触摸点。为了保证一致性,Tiles 被规定了模版。虽然有些模版允许完整的控制操作,不过大多数应用只会提供简单的文字或图片给 Windows 排版。

Tiles 有个“瞥一眼”的概念,它们可以稍稍上下滚动不长的距离,多显示一点文字和图片。

通知

通知可以在任何时刻显示在任何应用程序上方。用户可以忽略它、打开它,或者把它滑出屏幕。因为用户可以全局禁止通知功能,所以最好不要依赖它。

注意,并不存在一个收集未读通知的“杂物抽屉”,所以用户只有一次机会看到通知。如果让用户回看错过的通知很重要,那么应用程序应该相应更新其 Live Tile。

推送通知

应用可以订阅推送通知。这样 Windows 就能在应用没有运行的时候,照样更新其 Live Tile。请务必了解,只有当应用在屏幕上物理可见的时候,才是在运行中。所以推送通知往往是保持应用程序随时响应的唯一办法。

配置漫游

Metro 应用一般应该使用配置漫游。当用户在一台设备上配置好某应用,那么不管用户后来换到什么设备,应用始终保持配置不变。后台的设备间同步工作通过用户的 Windows Live 账户进行。

不需要特意保存

在应用之间切换的时候,Metro 应用只有大约 5 秒时间完成暂停前的准备。所以应用程序基本上会三不五时保存自己的状态。保存按钮不是必需的,撤销操作的功能倒很有必要。

理想状态下,用户应该可以在一台设备上更改数据,然后拿起另一台设备立即看到刚才的更改结果。不管是重要的业务信息,还是游戏存档,都应该以这种方式对待。

查看英文原文: Major UI Themes in Windows 8

2011-09-15 06:583642
用户头像

发布了 225 篇内容, 共 60.8 次阅读, 收获喜欢 50 次。

关注

评论

发布
暂无评论
发现更多内容

演化过程中的技术与业务双驱引擎

boshi

云计算 架构 中台 成长 数字化

基于 Spring Boot 的企业级快速开发框架 BDF3

木香丘

架构 Spring Boot 可视化 后台管理系统

技术人为什么该坚持写作?

极客思享

《我想进大厂》之MQ夺命连环11问

艾小仙

kafka 面试 MQ 程序语言

spring-boot-route(八)整合mybatis操作数据库

Java旅途

Java Spring Boot mybatis

算法岗有没有泡沫

极客思享

在互联网站上怎么准确分辨别出MG平台真假VX(LGF7998)黑网的验证方法?

InfoQ_6b6a6317a692

惊艳!腾讯微软内部5大算法文档+源码,大厂offer拿到手软

小Q

学习 架构 数据结构 面试 算法

第8周作业

Vincent

极客时间 极客大学

阿里互联网神话,超级工程双十一如何打造终于开源了(共4篇)

小Q

学习 架构 面试 算法 阿里

手把手教你锤面试官 02——设计模式轻松答

慵懒的土拨鼠

Java 面试 设计模式

「架构师训练营第 1 期」第三周作业

张国荣

架构训练营-week4-作业

于成龙

作业 架构训练营

中小企业如何启动产品科普直播?

boshi

内容 营销 直播 企业应用

week03总结

xxx

极客时间架构 1 期:第 3 周代码重构 - 学习总结

Null

洞察:区块链的危机与契机

CECBC

比特币 区块链 数字货币

时空停滞

Sean

调试 心得

那个百无一用的技术主管

极客思享

共享服务中心建设原则-《企业IT架构转型之道-阿里巴巴中台战略思想与架构实战》

Man

中台 研发管理 DDD

甲方日常 26

句子

生活 随笔杂谈 日常

区块链即将涌现更多典型落地应用

CECBC

区块链 落地应用

白玉试毒 | 灰度架构设计

九叔(高翔龙)

架构设计 互联网架构设计 灰度 灰度发布 发布流程

第8周总结

Vincent

极客时间 极客大学

使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源(二)

mzlogin

jsDelivr CDN Jekyll GitHub Pages 个人博客

区块链更多典型落地应用即将涌现

CECBC

区块链 落地应用

可穿戴的“舌头鼠标”,催生“黏腻”人机交互的新想象?

脑极体

菜鸟工程师的超神之路 -- 从校园到职场

极客思享

week03作业

xxx

java安全编码指南之:方法编写指南

程序那些事

java安全编码 java安全 java安全编码指南

LeetCode题解:429. N叉树的层序遍历,递归,JavaScript,详细注释

Lee Chen

大前端 LeetCode

Windows 8用户界面的主旋律_.NET_Jonathan Allen_InfoQ精选文章