内容来自:http://isux.tencent.com/ios8-human-interface-guidelines.html
“内容始终是iOS的核心。”
我喜欢iOS,然而,为其找理由时往往都忽略了内容,开口谈的几乎都是明快美观的界面和流畅的交互效果。如果没有搜集信息和迅速响应的交互能力,失去内容作支撑,iOS也只是个框架。
半透明底板。像玻璃拉门上的磨砂纸雕刻的精美图案一样,控制中心上拉后巧妙地把原页作为背景而非隐去,无论是内容相关性还是设计美感,半透明底板都做到了。
让颜色简化UI. 在读完《写给大家看的设计书》后有感。备忘录中的“新建”,“返回”作为区别于列表文字的操作符,没有使用“加粗”,“放大”,“底色”,“字体” 等硬性对比,而是用了“颜色”,其他均不变,增加了趣味,不突兀,而又指向明确。
用深度体现层次。文件夹图标的半透明浮层。备忘录的层级展示。日历的年月日层级。
iOS UIKit Framework 视图类型:控件,内容视图,临时视图
不同环境体验的可适用性:如果应用只在一个方向运行,确保用户明白如何把持设备,并且旋转180度后与原先保持一致。
用布局来沟通。可以在屏幕上半部分布置主要内容,整体从左侧开始。昨天看到一篇文章讲到用户浏览模式,主要有F和Z两种。F模式在以文字为主内容的网站出现,例如博客。用户沿左侧垂直向下,寻找每个段落开头的兴趣点,视线呈现F或E型。Z模式则出现在非文字为主题的页面。用户首先关注顶部水平方向的内容,视线到达地步后又遵循从左到右的习惯水平扫视底部内容。比如一个附带产品介绍的注册页面,开始有一个注册按钮,下拉会出现产品卖点,最下方的支付选项抵达了底部的水平线。
确保用户在默认界面就能找到首要内容。无需滚动和放大就能看到主体图像。
如果在应用中需要修改系统设置,直接跳转系统设置页面好过“设置>隐私>定位服务”的描述。
启动
即时启动原则:安装结束后不用重启设备,不要设置欢迎页面,让用户立即开始使用。
避免要求用户过多设置。默认为大多数所选值。尽可能从系统获取所需信息而非让用户填写。
尽可能让用户迟些登录,让用户在不需登录时使用大部分功能。这一点不能完全认同,因为在很多情况下用户已经不是第一次接触应用了(不同平台/二次下载/升级/系统更新),希望迅速找到个人信息,或对应用功能做定制,同步,等等。最简单来说登录页面需要很容易找到,而登录信息也应在合适的时间出现才好。
按照屏幕默认的定向方式启动应用,比如一个游戏应用在横屏下展示,在竖屏时打开也应是横屏界面。最好在旋转180度后正常显示横屏。
应用重启后恢复到退出时的状态。这个似乎很多应用没有做到。
停止
"iOS应用无需关闭或退出选项。当用户切换应用,回到主屏幕或者将设备调至睡眠模式的时候,其实就是把其放在后台停止了使用。在后台的应用随时有可能被终止或退出,因此需随时保存用户信息和当前状态,使用户可以在回到应用时能从中断之处继续使用。"
不要强制退出应用,用户可能误认为是crash。如果有问题出现,告诉用户当前状况以及解决方法。
保证所有可用功能正常显示。当用户点击不可用功能时才显示提示信息。
导航
三种常见导航结构:分层,扁平,内容或经验驱动。
分层:(iOS提供)导航栏 Navigation Bar.
扁平:标签栏 Tab Bar. 切换子任务,视图或模式。
页面控件 Page Control, 用于同类页面,展示页面总数和当前位置。
最好有直接到达每一页的捷径,如action sheet,modal view(弹出的另一视图)。
内容或经验驱动:比如游戏应用会根据具体内容来设置导航和提示。
模态情景
比如警告框,模态视图,分享菜单。“给用户提供一种不脱离主任务的方式去完成一个任务或者获得信息,但是也会临时性地阻止用户对应用的其他部分进行交互操作。”
需要尽可能减少模态情景。可以使用的情形有:必须引起关注;一个任务明确要被放弃或者完成时,需保存用户信息。模态情景要做到:
确保模态任务简单,聚焦。否则用户会迷失在模态任务中,忘记如何回到之前的操作;
提供明显、安全的退出;
确保点击“完成”按钮的效果。模态有多层时,下一级的“完成”不确定是本级的还是所有层级的完成。
交互性和反馈
用户所知道的标准手势:点击;拖拽;滑动;轻扫;长按;双击;缩放;摇晃。
不要改变/增加标准手势的含义;特定环境可以用多指手势,尽量少用。
可交互元素:
区别于普通文本,可以用蓝色表示。如果可交互元素和内容混在一起,需要增加边界(边框),背景(颜色)。
尽量将反馈内容整合到当前UI上去,让用户感到自然。避免不必要的警告框。
使用户得到平衡的输入和反馈结果。这也是一种心理平衡吧,不能一味付出不求回报不是么。
增加颜色对比度:需要区分的颜色要存在至少50%亮度差异。一种看对比度的方法是降低页面饱和度,在灰度模式下看它。
使用自定义的栏颜色时,考虑半透明栏。考虑用基准色,比如系统应用中“返回”,“提交”的颜色。如果自己定义表示交互的基准色,要和其他应用区分开。