自定义键盘组件_一文读懂!iOS系统组件的设计规范全解

0adedb0db5ba962ac72cfce796ca439c.gif
858d0f626407940eec85c136e55ceb65.gif
c717ef86a51bfe922f333958e7b735ef.png

一说到组件,大部分初级设计师和中级设计师的脑海里只会蹦出弹窗、Toast及操作列表等具体的概念,没有一套属于自己的组件分类体系,这样对于视觉设计、交互设计或产品设计的系统学习来说都是不利的。

28d8419fe03461f677f4d1628fe482b6.png

iOS14概念设计

iOS官方设计指南在介绍组件时是按照组件的属性来分类的。组件的中文翻译名称可能会有很多种,并没有一个权威、准确的中文命名。设计师在设计前只需要清楚每个组件名对应的组件是什么就可以了。

3578c5e310d51b1d422778e077c62134.png

iOS14概念设计

由于iOS和Material Design的组件体系有些不一样,因此关于组件的分类体系笔者会按照iOS和Android这两大系统进行拆分与讲解,而今天数艺君要讲解的是iOS系统的组件体系。

29019f8ac2bec82f7945078df94d3865.png

对组件可以按照两种维度来进行划分:一种是按组件的属性来分,另一种是按组件的功能类别来分。

iOS系统组件的分类如下图所示。

8f4b35e08718164fc8b94a9f970c922e.png

UI栏(UI-Bars)

UI栏包含的组件有导航栏、搜索栏、状态栏、标签栏、工具栏及范围栏。

1. 导航栏

导航栏能够实现在不同信息层级结构间的导航,有时也可用于管理当前屏幕内容,如下图所示。其中,Parent Title为上一级的标题,Title为当前视图的标题,Edit为操作控件。

099f26ecb714a0a5e306c725d1a0e3c0.png

使用规则:一般来说,导航栏上的元素不外乎3种,即当前视图的标题、返回按钮和针对当前操作的控件。

2. 搜索栏

搜索栏可获取用户输入的文本,并将其作为搜索的关键字(下图中显示的文本为占位符,而非用户输入文本),如图a和图b所示。

c57a23f1c29a3050e760446e16cac414.png

使用规则:搜索栏包含的元素有占位符文本和“清除”按钮。占位符文本通常会写明控件的功能(如图a中所显示的“Search”字样),或者提示用户输入的文本将在哪里搜索。大多数搜索栏都会提供“清除”按钮(如图b中右侧所示的按钮),方便用户一键清空输入内容。

3. 状态栏

状态栏展示了关于设备及其周围环境的重要信息,如下图所示。

c9a47c5c9f1638f8d479e537bf8188bc.png

使用规则:①通常为透明样式;②始终固定在整个屏幕的顶部。

4. 标签栏

标签栏方便用户在不同的子任务、视图和模式中进行切换,如下图所示。

99ead10e7ca08e714e45c04b1965795e.png

使用规则:①始终出现在屏幕的底部;②一个标签栏最多可承载5个标签,多于5个标签时展示前4个标签,并将其他的标签以列表形式收纳到“更多”标签里面;③ 无论是在横屏还是竖屏情况下,标签的高度均保持一致;④标签栏位于屏幕底部,并应保证在应用内任何位置都可用;⑤在标签栏中展示的图标和文字内容都应保持等宽状态;⑥当用户选中某个标签时,该标签会呈现为高亮状态。

5. 工具栏

工具栏用于放置操作当前屏幕中各对象的控件,如下图所示。

006b9461128c120c8a9e8361adab0353.png

使用规则:在iPhone系统界面中,工具栏始终位于屏幕底部。而在iPad系统界面中,工具栏则有可能出现在屏幕顶部。

6. 范围栏

范围栏只与搜索栏一起出现,主要方便用户定义搜索结果的范围,如下图所示。

237f164fb9169626695a520cb06e6342.png

使用规则:①当界面中出现搜索栏时,范围栏会出现在搜索栏的附近,且范围栏的外观与所指定的搜索栏的外观兼容;②当用户想在明确的分类范围内进行信息搜索时,使用范围栏虽然非常高效,但是还有一个更好的选择,那便是优化搜索结果,如此可以让用户不需要使用范围栏对搜索结果进行筛选就能找到他们所需要的内容。

UI视图(UI-Views)

UI视图分为临时视图和内容视图。

1. 临时视图

临时视图包含的组件有警告对话框、操作列表、模态视图、活动视图控制器及浮出层。

(1)警告对话框

警告对话框是传达应用或设备处于某种状态的组件,如下图所示。

5c0037867d55ad3acefccda87626c725.png

使用规则:①警告对话框的基本规则为标题必选、描述信息可选、输入框可选、按钮必选(可包含一个或多个按钮);②警告对话框的样式通常都是圆角白框样式,且带磨砂效果,不可更改。

(2)操作列表

操作列表是当用户进行某项操作时出现的浮层,其显示的内容为与用户触发的操作直接相关的一系列操作选项。

操作列表方便用户在开始一个新任务或进行破坏性操作(如删除、退出登录等)时进行二次确认。使用操作列表开始一个新任务这种操作在iOS原生的邮箱中应用得比较多,如下图所示。

24b92ebbb8f7621784be7ae7e97f08ba.png

使用规则:①由用户的某个操作行为触发;②包含两个或两个以上的按钮。

(3)模态视图

模态视图是一个以模态形式展现的视图,它为当前任务或当前工作流程提供独立的、自包含的功能。

当用户需要完成与APP中的基础功能相关且独立的任务时,设计师可以使用模态视图。模态视图特别适用于那些所需元素并非常驻在APP界面中但又包含多个步骤的子任务,如下图所示。

e7a708a1921b48009f358a41df62d2a4.png

使用规则:①可能占据整个屏幕,也可能占据整个父视图(Parent View)的区域,或者是屏幕的一部分;②包含完成当前任务所需的文字和控件;③包含一个“完成任务”的按钮(点击后即可完成任务,同时当前模态视图消失)和一个“取消”按钮(点击后即放弃当前任务,同时当前模态视图消失)。

(4)活动视图控制器

活动视图控制器是一个临时视图,其中罗列了一系列可以针对页面特定内容的系统服务和定制服务,如下图所示。

7028010104d41b08887096930bab5e38.png

使用规则:①由用户的某项操作行为触发;②主要用于当前界面或图片信息的分享。

(5)浮出层

浮出层是当用户点击某个控件或页面中的某一区域时浮出的、半透明的临时视图组件,如下图所示。

8cd3c383b4920a93260cd4d31bd9a66a.png

使用规则:①浮出层是一个自包含的模态视图;②在横屏状态下,浮出层会包含一个箭头,并指向其出处;③背景是半透明的,并且会模糊其背后的内容(遮罩背景);

④可以包含多种对象和视图,如表格、图片、地图、文本、网页、自定义视图、导航栏、工具栏及标签栏等;⑤可以操作当前APP视图中的各种控件或对象。

2.内容视图

内容视图是展示内容信息的部分视图,而非临时出现的视图。内容视图包含的组件有网络视图、滚动视图、分栏视图控制器、表格视图、文本视图、页面视图控制器、地图视图、图片视图、集合视图及活动视图。

(1)网络视图

网络视图能直接在APP中加载和呈现丰富的网络内容,如下图所示。

af46f3e24c656ba0ef1495a10255e759.png

使用规则:①用于展示网络内容;②可自动处理页面中的内容。

(2)滚动视图

滚动视图方便用户浏览尺寸超过视图边界的内容,如下图所示。

09ebd1ec654a7ae9c96cf73e2e9b876a.png

使用规则:①没有预定义的外观;②在其刚出现或当用户对其进行操作的时候会出现滑条;③当用户在视图中拖曳内容时,内容会随之滚动;④当用户轻扫屏幕时,内容将快速滚动,—直到用户再次触摸屏幕或内容已经到达底部时才停止;⑤使用滚动视图可以允许用户在固定的空间内浏览大尺寸或大量的内容;

⑥适当地支持缩放操作,如果放大和缩小操作对于当前内容有效的话,可以支持用户通过“捏”这个手势或双击来对当前视图进行缩放,若是支持缩放操作的话,设计师还应当根据用户当前的任务设定在当前情景下允许缩放的最大值和最小值;

⑦分页模式滚动视图中,可以考虑使用页面控件;⑧当设计师想要展示分页、分屏或者分块的内容时,可以使用页面控件让用户知道当前内容一共有多少部分,以及当前浏览的是哪个部分的内容。

(3)分栏视图控制器

分栏视图控制器是一个用于管理两个相邻视图控制器显示的、全屏视图的控制器,如下图所示。

2c7b80255fbb954cd06bfa3080f84e89.png

使用规则:①可以在横屏状态下并排展示两个窗格;②可以让主窗格在详情窗格上方显示,也可以在不需要的时候(尤其是在竖屏的状态下)隐藏主窗格。

(4)表格视图

表格视图以一种可滚动的单列多行的形式来展示数据,主要有两种类型:一种是平铺型表格视图,另一种是分组型表格视图,如下图所示。

a4d0e9470f51164e25ab2b2c11f256df.png

使用规则:①以可以进行分段或分组的单列形式展示数据;②用户可以通过点击并选中某行,或者通过控件来执行添加、移除、多选、查看详情或展开另一个表格视图等操作。

(5)文本视图

文本视图可以接收和展示多行文本,如下图所示。

d9f080a26e71a64706ca5f0aae859dda.png

使用规则:①它是一个可定义为任意高度的矩形;②当内容太多且超出视图的边框时,文本视图支持滚动操作;③支持自定义字体、颜色和对齐方式(在默认状态下,文本视图会以左对齐的黑色系统字体显示);④可支持用户编辑,当用户轻击文本视图内部时,将调出键盘(键盘的布局和类型取决于用户的系统设置)。

(6)页面视图控制器

页面视图控制器可以通过滚动或翻页两种方式处理长度超过一页的内容,如下图所示。

1a72e0406c4105c45b63251e65b9f3fd.png

使用规则:①带滚动条的页面视图控制器没有默认的外观;②带翻页效果的页面视图控制器可以在两页中间增加书页翻起的效果;③可以根据指定的转场来模拟出页面切换时的动画效果。

(7)地图视图

地图视图主要用于呈现地理数据,同时支持系统内置地图应用的大部分功能。地图视图可以给用户提供一个地理区域视图,且一般会允许用户在视图中进行交互行为,如下图所示。

3c73c3898e1d7c4ab0fbe47749f74637.png

使用规则:①以标准地图、卫星图像或两者结合的形式来展示地理区域;②可以支持单点标注及叠加图层功能;③支持编程时定义的或由用户所控制的缩放和移动。

(8)图片视图

图片视图主要用于展示单独的或一系列的静态及动态图片,如下图所示。

d51057fb13a755e042d0bd55e6076047.png

使用规则:①组件不存在任何预先定义好的外观,同时在默认状态下不支持用户的交互行为;②可检测图片本身及其父视图的属性,并决定这个图片是否应该被拉伸、缩放及调整到适合屏幕的大小,或者固定在一个特定的位置。

(9)集合视图

集合视图用于管理一系列有序的项,并以一种自定义的布局来呈现这些项,而且支持开发者额外定义手势来识别并执行自定义操作,如下图所示。

d25eddd0e6d61017e04fe37977ad5719.png

使用规则:①可以从视觉上区分项的子集或提供装饰性项目,如自定义背景;②布局切换时支持自定义转场动画;③在默认状态下,当用户导入、移动或删除项的时候,会出现系统默认的动画效果,同时集合视图可识别轻击、选中操作。

(10)活动视图

活动视图可以展示系统提供的或自定义的服务,如下图所示。

c9de07d9f5c2e409be00a392a747b746.png

使用规则:①各类活动可通过访问活动视图控制器来作用于某些特定的内容;②活动是一种可定制对象,代表着某项可以让用户在APP中执行操作的服务,以图标的形式呈现,外观与按钮图标相似。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/559481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

anaconda安装python视频_怎么安装anaconda?

安装 Anaconda步骤: 1、双击下载好的 Anaconda2-5.2.0-Windows-x86_64.exe文件,出现如下界面,点击 Next 即可。2、点击 I Agree (我同意)3、Install for: Just me还是All Users,假如你的电脑有好几个 Users…

office365 自定义_IT外包观察,足不出户,Office365打造教学新体验?

Office365无疑是当今最高效的集文档处理、联机协同、移动办公、快捷沟通、商业智能为一体的云端生产力服务。但office365仅仅只应用于移动办公吗?有没有可能实现移动办学呢?仅仅是商业智能吗?会不会也能做到教学智能?上海蓝盟连续…

python连接数据库mysql错误1045、手动登录可以_登录mysql错误1045解决方法

在命令提示符中登陆mysql时,提示1045报错解决方案: 安装好mysql,在cmd中输入mysql -uroot -p回车,输入密码后,出现1045错误,错误提示如下: ERROR 1045(28000): Access denied for user rootloca…

host 端口_如何让多端口网站用一个nginx进行反向代理实际场景分析

前段时间公司要整合服务器资源,刚好趁这次机会将这些乱七八糟的服务器做一次梳理和整合,断断续续一个月迁移完成大概优化掉了1/3的机器,完成之后遇到了一些问题,比如曾今零零散散部署在生产上一些可视化UI:apollo&…

sqldeveloper导出数据字典_如何全面建设B端产品中的数据迁移方案

加关注,带你看世界在新系统替换老系统或者系统升级的项目中,难免会存在数据迁移的工作,并且随着业务系统和数据结构的复杂性,数据迁移的难度越大。这亦要求在项目实施的前期,根据客户的需求尽可能全面地考虑到各个方面…

声明对象_静态变量(使用同一个类声明的对象可以共享一个值)

要在属于同一种类的对象之间共享数据值,可以使用static。namespace demo3{ class point //定义点 { public int x; public int y; } class line { static public point origin new point(); public point ending ne…

centos6配置mysql远程访问_MariaDB 数据库配置 Navicat 程序远程访问权限

如果MySQL数据库采用的是 MariaDB 引擎,与普通的数据库配置有点不同 MariaDB 与普通的MySQL数据库的一个不同在于它的配置文件不止一个,它将不同的数据放入到不同的配置文件中,之前的/etc/mysql/my.cnf内容如下:从文件中的注释上来…

java读取mysql配置文件_Linux运维:MySQL读写分离解决方案

一次性付费进群,长期免费索取教程,没有付费教程。进微信群回复公众号:微信群;QQ群:460500587教程列表 见微信公众号底部菜单 | 本文底部有推荐书籍 微信公众号:计算机与网络安全ID:Computer-net…

的硬件报错_工程师经验:78%的硬件失效罪魁祸首 —— 焊接问题

工程师经验你是否长时间纠缠于线路板的失效分析?你是否花费大量精力在样板调试过程中?你是否怀疑过自己的原本正确的设计?也许许多硬件工程师都有过类似的心理对话。有数据显示,78%的硬件失效原因是由于不良的焊接和错误的物料贴片…

柔性体没有应变_灌注式半柔性道面材料抗冲击性能试验研究

文章来源:微信公众号"沥青路面”前言灌注式半柔性道面材料是一种刚度大于沥青混凝土,小于水泥混凝土的复合道面材料,在兼具了两种材料优势的同时避开了它们的缺陷。半柔性道面不存在裂缝,而且受温度影响远远小于沥青道面&…

html网页上传到服务器_JSP+Servlet实现文件上传到服务器功能

本文实例为大家分享了JSPServlet实现文件上传到服务器功能的具体代码,供大家参考,具体内容如下项目目录结构大致如下:正如我在上图红线画的三个东西:Dao、service、servlet 这三层是主要的结构,类似 MVC 架构&#xff…

gaf处理一维故障信号_【推荐文章】改进局部均值分解的齿轮箱复合故障特征提取...

《机械传动》2019年 第43卷 第8期文章编号:1004-2539(2019)08-0130-05DOI:10.16578/j.issn.1004.2539.2019.08.024引用格式:柴慧理, 叶美桃. 改进局部均值分解的齿轮箱复合故障特征提取[J]. 机械传动, 2019,43(8):130-134.CHAI…

dll模块化设计与编程_FPGA设计原则经验分享

一、面积和速度如何折中 面积和速度是芯片设计中一对相互制约、影响成本和性能的指标,贯穿FPGA设计的始终。在FPGA设计中,面积是指一个设计消耗的FPGA内部逻辑资源的数量,可以用消耗的触发器和查找表的个数或者是等效逻辑门数来衡量&#x…

div背景透明_为什么css3实现background-image和半透明边框这么麻烦

”background和border属性能有什么难的?"我经常听到新手觉得css的background和border属性简单。那好,我们来看下面这个比较“简单”的需求:父元素有一张背景,子元素有边框,且子元素有一张背景颜色。这时候子元素的…

c mysql 查询超时设置_MySQL查询超时的设置方法

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 这里顺带解释一下什么是non-interactive connection Non-Interactive Commands Just do a quick look up on a table without logging into the client, running the query then logging back out aga欢…

python聚类分析案例_深度解读|如何构建用户分级体系实现精细化运营?附案例实操...

本文内容较长,代码全部已展示在文中用户精细化分类也可以称做用户画像,是目前很常见的一种运营手段,目的是为了更好的服务不同性质的客户,提高每个环节的转化率,最大程度挖掘客户价值,创造利润。那么如何构…

单片机集成wifi等_从零制作单片机需要哪些知识?

请点击上面 免费关注...说一下从芯片制作开始到最后编写驱动程序整个过程中每一步所需要的知识。作者:彭谟威链接:https://www.zhihu.com/question/28580074/answer/93515413来来来,让我们一起,左手右手一个慢动作。每一个方向都值…

matlab案例_基于matlab和frost平台的cassie案例足式机器人运动学和动力学计算实现过程...

1、软件平台Maltab2019aMathematica 12.1.0Frost2、实现步骤(1)、安装matlab2019a(2)、安装Mathematica 12.1.0(3)、下载frost-dev-master软件说明:https://ayonga.github.io/frost-dev/pages/i…

计算机毕业设计----SSM实现的一个在线文具学习用品购买商城

项目介绍 本项目分为前后台,前台为普通用户登录,后台为管理员登录; 管理员角色包含以下功能: 管理员登录,管理员信息管理,查看用户信息,新闻公告信息管理,文具类型信息管理,城市信息管理,配货点信息管理,文具信息管理,订单信息…

python2和3语法区别_python2和3语法区别

以下是Python2和Python3中的一些语法差异,有需要的小伙伴可以学习下。 print语句 在Python 2里,print是一个语句。无论你想输出什么,只要将它们放在print关键字后边就可以。在Python 3里,print()是一个函数。就像其他的函数一样&a…