UI设计师,是时候了解一下组件库了

UI设计师,是时候了解一下组件库了,第1张

在开始这个话题之前,UI设计师先来回想一下自己的工作流程,当我们开始做一个界面时,不外乎两种情况,一种是新产品,一种是现有产品迭代界面重绘。对于前者,是不是先扒拉扒拉参考一下竞品的界面设计,然后套一套自己茄竖举产品的功能,然后就可以开工了,这里需要放个导航条,嗯,这里用选项卡,再加个搜索颤碧框,搜索图标放里面好还是放外面好呢,就放外面吧,热门搜索要不要做成标签呢,不行,这事决定不了,去问问项目经理去,这里还需要一个文本输入框,限制200字,那就给它个高度300像素吧。而第二种情况,更简单,重新配配色,布布局,画画图标,就酱。不出意外的话,绝大多数UI不会脱离这个套路。(“大神级”UI自然也不会在看这篇文章,这一部分人就暂时忽略了)

如果作为UI设计师的你现在仍然停留在这个阶段的话,那从现在开始,你需要重新规划一下自己的设计思路了,并且,最最重要的是,你需要了解两个东东,“框架”和“库”。这两个概念我自己也比较模糊,从UI设计师的角度出发,我们需要知道的一点是和你们合作的前端极少极少不使用框架,而UI库是一些封装好的组件的样式,你发给攻城狮的设计稿,他们拿到后的第一反应就是纤孝赶快看看(咳咳,当我没说)有没有现成的可使用的组件样式,最好越接近你的设计越好,然后简单改改,攻城狮们的工作思路和我们是一样一样的,最好不改交互方式,只改样式。(什么控件、组件、插件的,我也不能严格区分,所以即使有错误的地方,也请勿纠正,哈哈)

说到这里,UI设计师又开始各种烦躁了,设计师到底为毛要掌握这些莫名其妙的知识??举个例子先,我们都知道给响应不是那么快的页面设计一个加载动画,那作为设计师的你知不知道加载状态是和服务器存在数据交互时使用,如果是本地行为,则不需要加载状态。只有了解这个,你才会知道你的加载动画应该在哪些页面出现,进行什么 *** 作时出现,以什么形式出现合适。(咦,这个例子似乎举得没有代表性,那么来看下面这个例子)

就说个最简单的tab选项卡吧,SUI组件库里的tab选项卡样式是下面这样子的:

样式似乎没有什么参考性,但你从中要得到的一个重要信息就是,作为选项卡而言,内容要和选中标签页看上去成为一个整体,也就是说你可以重新设计成下面这个样式

但如果你设计成了这种样式

那么请来告诉我,这神秘的横线我该如何理解呢?即使下面这种,仍然不是最佳方式,因为我们的选项卡需要“第一眼看上去就知道哪个tab页处于选中状态”。

目前广泛应用的UI组件库,包括easyUI、amazeUI、Bootstrap等等,我们可以从这些来入手,在设计时进行一下参考,如果它的按钮有四个状态,OK,你也来对应设计四个状态,如果它的input输入框有禁用状态,获得焦点状态,那同样你也要在自己的设计文档中予以体现。(当然,并非绝对,也要考虑项目的实际情况,灵活变通)

现在重新理一下工作流程,你要先咨询一下前端开发人员他们常用什么,或者项目中已经使用了什么,咱们来举例说明,如果前端攻城狮们已经使用了EasyUI,而碰巧你的项目中需要一个日期选择的功能,那正确的思路应该是怎样的呢?

首先,你需要先看一下EasyUI库里日期控件的样子。就是下面这样

然后试一下功能,再进行设计时,心里就有底了,比如可以改成下面这样

但这样就完了么?作为UI还需要考虑对于这个控件而言都提供了几种状态?默认加载的当前日期、选中其他日期后的当前日期、鼠标经过、周六/周日的日期颜色、非本月的日期的颜色,这些都需要一一体现在你的标注文档里,事无巨细,一旦疏忽了其中任何一个小细节,好点的情况是负责的前端开发人员会过来和你沟通,而有时可能攻城狮们一疏忽,那只有寄希望于视觉走查和测试了。这么简单的一个日期控件都需要考虑全面,所以,一个合格的UI还是需要多沉浸的。

如果你不没有看过UI库里日期组件的样式,而自作主张的设计成了下面的样子

还拿出很多理论来支持自己的设计,你看,年和月的选择都很方便快捷嘛,嗯,好想看你被开发人员暴打的样子……当然了,这里不是说不让你发挥你的创意,不过除非你有非常说服力的理由和让别人心服口服的设计理论支持,否则,不要做这种出力不讨好的事情,因为作为成熟的组件库,经过多年的发展,已经被很多人所认可和使用,也能更大程度上和其他用户经常使用的产品保持一致的交互。

对于移动端,Android SDK提供的界面UI基本没有看的必要,而绝大多数开源UI库源码在github,给设计师们直观的查看设置了门槛,比如GreenDroid等等,Android的UI框架和web的有个比较大的区别就是按组件分类,像Side-Menu分类侧滑菜单,Pull-to-Refresh下拉刷新,给UI设计师推荐一个awesome-android-ui,自带Demo, https://github.com/wasabeef/awesome-android-ui/blob/master/pages/Material.md ,包括一些动效,很直观。

比如这种水纹效果的样式。

还有这种汉堡菜单/关闭/返回按钮的变换

作为UI设计师,在做原型稿的时候基本不用费尽心思用AE来做什么特效,直接附上效果和库的源文件地址就好,方便自己也方便开发。

另外移动端的UI日常尤其要注意控件样式的积累,自己建好文件夹,分好类,按钮/编辑框/switch/文本控件/进度条/滚动条/对话框/日历/导航/图表/菜单/轮播广告位/搜索框/标签组等等,为了减轻开发人员的负担,在看到不错的效果时,可以把Demo动画和项目地址同时保存下来,因为你的天马行空的想象或者简单一句“在XXX上好像看过这种效果”会让开发人员非常抓狂。

多看UI库的另外一个好处是拓展自己的设计思路,像下面这种Floating Action Button

还有粘连效果的页面指示器

如果不是看到这种动效,或许我们自己也想不出可以做成这种样子。

iOS开发的话因为我本人也只涉及过寥寥数个项目,而且都是和Android用的同一套界面,所以未总结出足够的经验,最多看看最新版的HIG人机交互指南,参考过几个竞品,所以这里就不献丑了。

.最多可把一个软件分成10个部分同时下载,而且最多可以设定8个下载任务。通过多线程、断点续传、镜像等技术最大限度地提高下载速度。

2.支持镜像功能(多地址下载)-通常网站对您要下载的文件,都会列出好几个地址(即文件分布在不同的站点上),只要文件大小相同,本软件就可同时连接多个站点并选择较快的站点下载该文件。优点在于保证更快的下载速度,即使某站点断线或错误,都不会影响。一个任务可支持不限数目的镜像站点地址 ,并且可通过Ftp Search自动查找镜像站点。

3.可创建不同的类别,把下载的软件分门别类的存放。强大的管理功能包括支持拖拽,更名,添加描述,查找,文件名重复时可自动重命名等等。

4.可管理以前下载文件。

5.可检查文件是否更新或重新下载。

6.支持自动拨号,下载完毕可自动挂断和关机。

7.充分支持代理服务器。

8.可定制工具条和下载信息的显示。

9.下载的任务可排序,重要文件可提前下载

10.多语种界面,支持保括中文在内的十几种语言界面,并且可随时切换。

11.计划下载,避开网络使用高峰时间或者在网络费较便宜的时段下载。

12.捕获浏览器点击,完全支持IE和Netscape。

13.速度限制功能,方便浏览

FlashGet简介

网际快车FlashGet原名叫做JetCar,从0.76版开始更名为FlashGet。FlashGet不仅具备断点续传的功能,而且它还有下载速度快和易于管理等特点。

在FlashGet中你可以为下载的软件建立不同的类别,每一个类别指向一个子目录,在软件的下载前后你都可以方便的给下载后的软件分类。而且由于FlashGet中支持拖放功能,所以你使用时会感觉特别方便。FlashGet支持十几种国家的语言,其中包括中文,当你在中文系统中安装它后,它的界面会以中文来显示。

FlashGet是一个免费软件,你可以到http://www.amazesoft.com站点下载它的最新版本,目前的最新版是FlashGet 0.76,其运行界面如下图所示:

进入FlashGet的界面后,我们可以看到除了上面的菜单和快捷工具栏之外,在界面中还有四个列表框。最左的列表框相当于Windows中资源管理器左边的目录栏,它列出了已建立的下载软件的类别目录;右上角的这个列表框中的内容是类别列表中被选中目录中下载任务的列表,任务列表下面两个列表是用来显示下载信息的。

下载前的设置

在下载以前我们还需要做一些必要的设置,这些设置包括代理服务器的设置、默认下载属性。

如果你是用Modem上网的话,你必须设置“拨号网络”。选择“工具李喊”菜单下的“选项”,在d出的“选项”对话框中,单击“拨号网络”选项卡,点击列表框下的“连接”下拉框,从中选择拨号连接,然后在下面输入用户名和口令,最后选中“完成后挂断”,点击“确定”按钮结束。下图为设置拨号网络的对话框:

如果你需要通过代理服务器上网的话,那你必须先设置代理服务器。一般在下载时我们要设置两种下载方式,一种是“HTTP”,另一种是“FTP”。设置的方法如下:

打开FlashGet后,点击“工具”菜单下的“选项”,在d出的“选项”对话框中单击“代理服务器”选项卡,点击列表框下的“添加”按钮,这时会d出一个“代理服务器设置”的对话框:

在“类型”一栏中选择“HTTP”选项,然后在分别在“名称”、“服务器”和“端口”栏中填入相应的内容,其中的“名称”只是一个标识,名称可以自已起,“服务器”栏填写的是代理服务器的地址,“端口”栏填写的是HTTP服务的端口号。如果你的代理服务器登录时需要验证,那么你可以选中哪衡野对话框右边的“验证”选项,然后在其下面的“用户名”与“口令”栏内填入相应内容。设置完毕后,点击“确定”按钮。用同样的方法再添加一个FTP代理,不同的是“类型”一栏选择“FTP ”,服务器地址与端拦姿口号也相应的FTP设置。

添加完代理服务器后,我们在“选项”对话框中的列表框中设置缺省的Http与Ftp的代理服务器,方法是先根据列表框右边“名称”一栏找到我们建立的Http代理服务器的名称,在其所在行的“Http缺省”一栏中的小方格打上对勾(单击小方格即可),同时的方法在Ftp代理服务器名称所在的“Ftp缺省”一栏中小方格打上对勾。最后点击对话框下方的“确定”按钮。这样我们就把默认的代理服务器设置好了。下图为设置代理服务器的对话框:

现在我们来设置默认下载属性。你可以单击“工具”菜单下的“默认下载属性”来d出“默认下载属性”对话框(快捷键:“Alt+Ctrl+o”)。在这个对话框中你可以在“类别”下拉框下选择下载后的软件默认类别,在“开始”栏可以设置下载任务是手动开始,、立即或计划开始。一般情况下我们选择“立即”即可。在对话框中还可以设置缺省的进程数,也就是把下载文件分成几部分同时下载,这些可以加快下载速度,但同时应注意下载的进程数过多会增加服务器的负担,而使的速度反而变慢,所以一般开3~4进程即可。设置完后点击下方的“确定”按钮。下图为设置下载属性对话框:

到现在为止,下载前的设置就完成了。

下载方式

FlashGet提供了多种下载方式,如下列表:

·监视浏览器的点击

FlashGet可以监视浏览器中的点击,当你点击一个链接时,它会判断此链接是否满足下载要求,如果满足则自动d出下载任务对话框。

·扩展IE的d出式菜单

FlashGet在IE的右键菜单中加入了“Download All By FlashGet”和“Download using FlashGet”两个选项,你可以在某一链接上点右键然后选择“Download using FlashGet”来下载软件。

·监视剪贴板

FlashGet会自动监视剪贴板的变化,它会判断剪贴板的内容是否满足下载要求,如果满足则自动d出下载任务对话框。

·拖放

FlashGet启动后桌面上出现一个小托盘,你只要将浏览器中的链接拖到小托盘上,它也会自动d出下载任务对话框。

·直接输入URL

在FlashGet中单击“任务”菜单下的“新建下载任务”,会d出下载任务对话框,我们在“URL”文本框中填入下载文件的地址,点击“确定”即可。这是最原始的一种方法。

下载任务对话框的设置

通过以上的下载方式d出下载任务对话框后,我们可以在这个对话框中做一些设置,比如下载后文件存放的目录,开始执行下载任务的时间等等。

设置好所有选项后单击下面的“确定”按钮即可。注意:在此对话框d出时的设置是我们已定义好的默认下载属性。

下载任务的开始方式

如果下载任务的开始方式是“立即”,那么当点击“确定”按钮后FlashGet就会马上开始下载。

如果下载任务的开始方式是“手动”。那么当需要开始下载此下载任务时,你可以选中FlashGet界面中左边的目录列表中的“正在下载”,在右边的文件列表中选中需要开始下载的任务,点击工具栏中的“开始”按钮(一个小三角形状的按钮),这时FlashGet就开始下载此文件了。

如果下载任务的开始方式是“计划”。那FlashGet会在设置好的时间内自动开始下载。设置下载时间的方法如下:选择“工具”菜单下的“选项”,选择d出对话框中的的“计划”选项卡,在此页中就可以设置下载的开始和停止时间。

如果下载任务开始时是以“计划”方式下载,而后来你又想马上开始下载的话,可以选中FlashGet界面中左边的目录列表中的“正在下载”,在右边的文件列表中选中需要开始下载的任务,点击工具栏中的“开始”按钮(一个小三角形状的按钮),这时FlashGet就开始下载此文件了。

下载任务的开始方式不但可以在新建任务时设置,而且还可以在建立下载任务后设置。在设置前必须把此下载任务暂停后才能设置。设置方法是点击“正在下载”类别中的某一任务,在这一任务所在行上点右键,从右键菜单中选择“属性”。这时d出的对话框与新建任务时的下载任务对话框是相同的,设置的方法也是一样的,你可以参考上一个标题中的设置方法。

在FlashGet关闭后,它会自动保存正在下载的文件的信息,当你下次打开FlashGet时,它会接着上次下载到的地方下载,而不会把文件再从头开始下载,这就所谓的“断点续传”。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11982293.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存