iOS 人机交互指导方针(iOS Human Interface Guidelines) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的漂亮人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino.否则,出自本博客的文章拒绝转载或再转载,谢谢合作. UI 设计基础 UI Design Basics 为 i…
最近离开了老东家,整理整理思路,因为一直做的是微信公众号相关的产品对app的东西有一段时间没有做过了,所以又看了一遍iOS human interface guidelines,看到user control的时候有了一些感慨,所以用这篇文章记录下.可能有些同学没有看过相关的内容这里先把中文版(@喵大神经)的相关小节贴出来: 在iOS内部,是用户--而不是应用--在控制.应用可以对一系列用户行为提供建议,或对可能造成严重后果的行为发出警告,但不应该替用户做决定.好的应用会在让用户主导和避免不想要的…
1. 引言1.1 译者自述 我是一个表达能力一般的开发员,不管是书面表达,还是语言表达.在很早以前其实就有通过写博客锻炼这方面能力的想法,但水平有限实在没有什么拿得出手的东西分享.自2015年7月以来因工作及个人的兴趣开始逐步转向iOS开发,在这期间系统的学习了下斯坦福桥大学Paul老爷子关于iOS7,iOS8的视频公开课及苹果官方的开发文档.当然也包括这篇<iOS Human Interface Guildlines> ,半年的学习下来碰到最大的问题就是遗忘,很多知识点学过没多久就忘记了,必…
多任务处理 多任务处理让人们在屏幕上(以及合适的iPad模式)查看多个app,而且在近期使用的app中高速地切换. 在iOS 9中.人们能够使用多任务处理UI(例如以下所看到的)来选择一个近期使用的app. 在多任务处理环境中的成功取决于与设备上其它app的和谐共处.在高层面上.这意味着app应该: 用心地优化资源的使用来避免使用过多的CPU.内存.屏幕控件和其它资源 优雅地处理其它app的干扰和声音 停止和又一次開始--即过渡到后台或从后台过渡--高速而平滑 当没有在前台时对行为负责 以下的特…
搜索栏 搜索栏接收用户输入用于搜索的文本(例如以下,带有占位文本). API NOTE 查看UISearchBar学习怎样在你的代码中定义搜索栏.查看UISearchDisplayController学习很多其它关于显示搜索栏的内容. 搜索栏能够显示一些可选的元素.比如: 占位文本.这个文本可能陈述了控件的功能(比方上面显示的"搜索")或提醒用户他们在何种环境搜索(比方"Goodle"). 书签button. 这个button能够提供一个訪问用户想要方便再次找到的信…
弹出框 弹出框是当人们点击一个控件或屏幕上一个区域时显示的一个暂时的界面. API NOTE 在iOS 8及以后的系统中.你能够使用UIPopoverPresentationController来显示一个弹出框. UIPopoverPresentationController定义了一个协议来让你调整你的弹出内容的显示风格去适应当前的显示环境.比方说.在水寻常规环境下.你的内容能够在弹出框中显示:在水平紧凑环境下,你的内容能够在一个全屏的模态视图中显示. 一个弹出框: 是一个自包括的模态视图 在水…
系统button 系统button运行一个app特定的动作. API NOTE 在iOS 7中,UIButtonTypeRoundedRect被又一次定义成UIButtonTypeSystem.查看UIButton学习很多其它关于在你的代码中定义一个系统button的内容. 一个系统button: 默认没有边框或者背景外观 能够包括一个图片或者文本标题 支持自己定义外观.比方边框或者背景图片(使用UIButtonTypeCustom类型的button并提供一个自己定义的背景图来加入自己定义的外观…
编辑菜单 用户能够显示一个编辑菜单来在文本视图.网页视图和图像视图运行诸如剪切.粘贴和选择的操作. 你能够调整一些菜单的行为来在你的app中给用户给多的内容控制.比方你能够: 指定哪一个标准菜单命令对当前的环境合适 在菜单显示之前决定菜单的位置这样你就能够保护你app UI中重要的部分免于被遮挡 当用户双击来显示菜单时决定默认选中的对象 你不能改变菜单它自己的颜色和形状. 查看Copy, Cut, and Paste Operations获取怎样在代码中实现这些行为的信息. 为了确保你app中的…
开发之前需要想到的: 1.列出所有用户可能喜欢的功能. 例子:食谱 (1)创建一个总的食谱菜单 (2)食谱的获取方法  (3)比较价格 (4)当地的食材店 (5)食谱每道菜的注释 (6)能够获取和使用的优惠券  (7)使用图片或者视频的形式演示烹饪的过程 (8)显示不同的烹饪方法,或进行新的探索 (9)发现可以代替的食材 2.确定谁是你的用户群 你需要考虑一个很重要的问题:对于他们来说什么才是最重要的? 例子:食品杂货店  ,  面对顾客你会有提问顾客是否: (1)经常在家烹饪或者趋向于现成的食…
Wallet Wallet(钱包)帮助人们查看和管理Pass(凭证),这是一种相似于登机牌.优惠券.会员卡.奖励卡和各种票的物理凭证的数字替代.Wallet也同意人们加入信用卡.借记卡和储值卡来和Apple Pay一起使用.在你的app中.你能够创建一个Pass,将其分配给用户,然后当内容更改时更新它. PassKit 框架使自己定义内容来接收Pass以及当用户的Pass库中有它的时候使用Pass变得easy. (查看Wallet Developer Guide来学习关于Wallet的主要技术以…