Metro UI的Live Tiles彩蛋

作者:苏扬    分类:专题, 业界生态 发表于:2011-12-27

Live Tile的动态精髓

Windows Phone最大的特色莫过于其Metro UI设计的统一与严谨,但是不得不承认这种全是的UI设计理念被用户接受需要很长的适应过程,而在这个过程中难免有很多用户将Metro UI的精髓归结为单一的块状图标,很简洁并一目了然,但答案并非如此。因为对于微软而言,如果UI设计的革新只是仅仅停留在外观之上,那这种变革是没有意义的。那么会有很多朋友会疑惑,究竟这种块状设计背后还蕴藏着多少更深层次的意义呢?

Live Tile的奇妙之处很好的被其名称所概括,简而言之就是Live和Tile的联动。Live在很多中文翻译中可以被译作“实时、实况”“动态”等意思,而Tile则常被译作“瓷片、砖块”,台湾方面对于Live Tile的翻译即“动态转”。绝大多数时候用户对于Metro UI印象主要集中在这个“砖块”之上,但从此设计理念而言,更多精华部分非Live莫属。

Live Tile于iCon之判若两人

Live Tile和icon之间是无法画上等号的,虽然Live Tile的种类包括的纯粹的图片,但是icon应当是集中在当我们向左滑动主屏幕后的应用程序列表中,主屏幕出现的图片在进行相应的设置之后就是一个Live Tile整体。除了正方形砖块之外,同样还拥有长方形的砖块和仅有文字和消息提醒以及动态九宫格的Live Tile。但是第三方开发者通常只能够设置正方形的Live Tile,长方形的Tile一般只向系统原生和硬件生产商开放。

Live Tile虽然看上去只是简单的一个块状icon,但可以实现的功能则非常的多。包括原生的应用的快捷入口,并且包含有相应的提示信息,同样还可以是一个第三方应用的入口,也可以作为一个阅读器的信息提示窗口,更有胜者Live Tile还可以作为单个联系人、游戏的关卡、甚至的第三方应用的某一项单独的功能(如快速发微博)的入口,前提则是开发者在应用中给予相应授权。

通常我们所见到的块状Live Tile最多可以包含三个layer,每个layer都负责显示不同的内容,其中包括显示通知信息、Title以及背景的不同layer,而这三个部分有机结合起来才能将其称之为Live Tile,虽然icon或者图片也是其中的一个部分,但是其并非至关重要的,开发者有权限自主选择是否需要添加相应的背景层。相对而言某些比较复杂的应用甚至可以选择双面的Live Tile,在不同面显示不同的信息,但大体结构还是仍类似单面应用。

之所以将层次划分的如此清晰而不是将所有的信息整合在一个layer之上还是基于Live Tile的本身特性,分化和细化之后的结构可以使得每个部分分别承担不同的工作任务,对于用户而言作用可能不太明显,但是对于开发者而言,Title就是显示标题的,不作它用,极大便利了开发者的开发工作布局。

其中包括正面和反面的content层上的内容都可以实时更新,基于此来实现Live Tile的通知推送功能。而正面和反面可以通过翻转和平推的动画效果进行切换,在加之更新提示,使得tiles出色的承载了更多的信息,同时给系统带来了灵魂和生机。而这才是Metro UI块状的精华,而不是拘泥于单一的“砖块”。

与Widget同族不同根

对于Live Tile的定义从概念上我们可以将其理解为与在Windows平台或者Android平台所使用的Widget,通过Live Tile或Widget的方式迅速向用户提供一些关键信息(如新闻、天气预报、体育比分或行业动态等)的提示性显示。现在的问题在于既然而这具有类似功效,为什么微软会采用全新的Live Tile概念而没有继承Widget的衣钵?

对这个问题的回答应当围绕Widget的启动时间与模式并不能很好地实现整体功耗降低的效果方面,直接采用Widget的方式来显示实况信息,操作平台首先需要顺利的加载这些类似于应用程序的Widget,同时调用的Widget越多的情况下,处理和内存的数据处理逐渐接近峰值,如果在操作平台不做很好的优化,则会导致操作平台性能大大降低,进而影响用户体验的效果。

本地数据处理云端化

相比较之下,Live Tile在同样在实时显示信息的情况下显得更为明智。开发者可以直接在Windows Phone的开发环境下添加相应的内容,即开发应用的服务端与增加服务端显示的内容。举个例子,比如开发者需要开发一款天气应用,那么开发者可以将最新的天气温度值等信息添加至应用的服务端,服务端会将整合的信息推送至微软的通知系统(WNS),再经由通知系统传至最终用户,从而形成一个云端概念。

通过这样的方式来降低本地硬件数据处理的符合,在不影响操作平台稳定流畅的情况下实现Widget的相同效果。除此之外,对于开发者和用户而言,Live Tile实现实时消息推送的理念无形中节约了Widget所占据的屏幕空间,所有的Live Tile都可以固定至主屏幕,这也给用户和开发者对屏幕的利用率留下了更大的发挥空间。

但是摆在眼前的问题则是开发者可以利用开发控件中的Count属性来显示推送信息的数值,但Count的值最大为99,毫无疑问解决该问题的最好办法即上图所示的第三个步骤,利用图片堆叠。通过简单的图片来显示相应信息,这些图片包含了所有可能显示的值,开发者可以每次对Tile的BackgroundImage 属性进行改变,然后向用户显示自定义后的温度值。

这个问题可能会有很多人反问,如果一款应用要求实时显示的内容和信息过多,利用大量的图片进行推送毫无疑问会增加应用的体积,简单来说如果一款天气应用可能会达到50MB,那么多少用户愿意去下载?幸运的是,开发者可以将这些图片存储在网络服务器上,然后将BackgroundURI 属性值指定为该图片的url,这样应用端只包含一串代码而不是较大的图片。

结语:Metro UI中的Live Tile可以定义为一个集应用入口以及内容推送显示于一身的通知平台,其主旨则在于更好的为用户展现内容和信息,同时降低操作平台的负荷,结合微软通知系统的云端服务,来增加操作平台本身的稳定性和流畅性,进而增进用户体验。

  • (请在转载和引用时,注明原始作者和出处,并给出原始链接)


  • 分享到
    相关文章