ios界面设计规范(共7篇)
ios界面设计规范 篇1
刚入门UI的小伙伴是不是不知道app该怎么切图、规范是什么?怎么和程序员同学配合,用什么工具更方便,怎么标注自己的设计稿,怎么做到一稿适配多种机型,这篇文章将一一解答你的疑问!
依旧声明:这里写的不是一种规范,只是一种工作方法,大家在具体工作中,一定要灵活运用。另外,技术的更新是非常快的,所以,还是要灵活运用~
我本身是一名GUI设计师,所以我只站在GUI设计师的角度去把APP从项目启动到切片输出的过程写一写,相当于工作流程的介绍吧;公司不同,流程不尽相同,但是终究还是能有些帮助。
这里我们只说IOS系统下的设计,至于Android,因为尺寸太多,涉及的东西比较乱,我整理好以后再说吧。
页面篇幅比较长,不推荐一次性看完,那样你潜意识里就会对它厌烦了,所以可以有时间读一读,看一看。
Part 1 项目立项
完善的公司会把项目相关人员聚集起来,产品经理会把产品详细的用原型展示出来,包括产品定位,市场需求,主打卖点,产品性质以及各模块具体功能,逻辑跳转演示一下;之后会评估项目用时,各部门协调,项目启动。
话不多说,接到原型,那我们应该做什么准备工作呢?
在项目设计之初,就该进行项目归档整理,我的习惯是“项目名称+版本序列”; 没有最正确的工作方法,只有最适合自己的工作习惯。
我个人习惯把不同类型的文件划分到不同类型的文件夹里,有的设计师习惯全都放在一个文件夹里,如果文件少还说的过去,如果页面过多,就知道这样的利弊了。
工欲善其事必先利其器,基本上我做界面设计用的最多的就是PS和AI了,版本无所谓,用着舒服就行,推荐版本高一点的,低版本好多方便功能都没有。
标注工具:
PxCook,目前我还没用上Mac,所以也不知道传说中的Sketch到底多神奇。PxCook在Windows上标注还比较顺手,虽然它还附带切图功能,但是比较鸡肋,不推荐用它切图。
切图工具:
Cutterman 点击下载一款PS的插件,切图非常方便,但不支持绿色免安装版本PS,而且对PS版本要求比较高,针对CS 6的已经不维护更新了。推荐安装官方完整版PS cc,然后自行破解。官网上有安装使用教程,自己研究下吧,因为我也是最近才开始接触这款插件。
Assistor PS 也是一款PS的切图标注插件,也被誉为神器;我使用了下,感觉相当不错,就是标注还没太适应,推荐一下这个。
标注工具以及这两款插件我都会上传,至于安装方法去“百度一下”吧,易学易用。Part 2 Photoshop设计尺寸
现在常用的几种设计尺寸
1.640*960
4时代的尺寸,刚接触APP设计用的是这个尺寸,拟物盛行的时代(现在用这个尺寸设计的应该比较少了吧);
2.640*1136 5/5S/5C,IPhone更新,咱们设计也得跟着与时俱进(应该还有人用这个设计尺寸),进入扁平的时代了;
3.750*1334 6 目前我做设计稿的设计尺寸,IPhone6的尺寸,向下可以适配4,5,向上可以适配6 plus;我记得IP6推出后,我问总监应该用什么尺寸设计,他说用IP6的吧,好适配,切出来就是@2x了,改一改上下都能照顾到。
推荐做设计稿的时候使用IPhone6的尺寸进行设计。
IP 6的尺寸相比于IP 5来说,很多系统控件尺寸并未变化,只是高度也就是内容显示区域发生了变化。下面是IPhone 6的空白文档,我建立了参考线。
文档建立之初就设置好参考线是个很好的工作习惯,我希望更多的设计师可以养成更好的工作习惯。
上下的参考线很容易设置,因为是根据IPhone自身系统设置的,左右的参考线我习惯设置为24px,也就是显示内容距离边框的距离。这不是绝对的,我和总监研究过,究竟是设置为左右30px还是24px比较好,通过对国内国外各种APP的对比,觉得24px更适合一些,不宽不窄,这个完全是设计师个人的设计习惯,所以不要当成什么规范,确切的说,整个屏幕你都可以随便做,但是我们这里说的是正常页面。
Part 3 页面标注
标注是重中之重,工程师能不能完整的还原设计稿,很大一部分取决于标注;如果不清楚你该怎么标,一定要和工程师沟通!
每个工程师实现效果的方法不同,我在这里所说的,是我的标注习惯,但应该适用于大部分的设计师和工程师。
不需要每一张效果图都进行标注,你标注的页面能保证工程师开发每个页面的时候都能顺利进行即可;
这里的标注软件使用的是PxCook,先标一个空白文档,看看都需要什么吧
这里要说一句,PxCook虽然可以自动读取颜色,但是还不能对PSD文档里设置的透明度读取,所以如果你用了透明色,推荐你用文字标注直接写出来原色值以及透明度。基本上我并不使用PXCook里面的颜色标注工具,而是使用文字标注工具,因为要标识两种色值,PxCook只能显示一种色值。
一般我的习惯是PS和标注软件同时打开,因为有时候标注软件并不能完全的把PSD文件里的东西标注出来,所以标注也要灵活运用,如果无法标注,就到PS里查看一下,然后再使用文字标注说明一下。
标注颜色是使用16进制,还是RGB:
都用得到,要看实现什么东西,建议标注颜色时,两种色值表达都标上(16进制&RGB)。你需要标注的内容有:
1.文字需要提供:字体大小(px),字体颜色; 2.顶部标题栏的背景色值,透明度;
3.标题栏下方以及Tab bar上方其实有一条分割线,需要提供色值; 4.内容显示区域的背景色(如果是全部页面白色,那就和工程师说一句就行); 5.底部Tab bar的背景色值。
因为页面的种类成千上万,我想每种页面都讲一下,但是不现实,希望可以举一反三。下面的是一个比较普通的首页页面,但是基本上一款APP中应该标的元素都有了~
一般页面你需要标注这些地方:
所有元素统一距离屏幕最左24px(全局性的数据可以直接和工程师沟通,也可以标注,推荐标注出来)
1.标题栏:背景色,标题栏文字大小,文字颜色(不再赘述);
2.Banner:所有撑满横屏的大图,不需要横向尺寸,把高度标出了就可以了;3.菜单图标:
图标的大小和图标的可点击区域不一定一致
也就是说,图标可以做的很小,但是为了保证点击的准确性和流畅性,工程师可以把可点击区域设置的很大,这样标注和切图的时候就要注意,标注的是可点击区域的大小,切图切的也是可点击区域的大小,也就是用透明区域去补上,否则图片会模糊。在设计的时候就要考虑可点击区域的范围,比如X宝购物车页面左侧的小圈,可点击区域要比实际小圈尺寸大很多。
这种类型的图标需要标注图标点击区域大小,图标距离屏幕最左最右以及上下的距离。至于图标的间距,因为有些时候可能
设计师不能完全做到1px不差,所以我基本不标,交给工程师让他们去处理,其实等距排列的图标不需要标间距,因为工程师还要动态适应不同的屏幕,标了间距也是白标(还是要和你的搭档沟通怎么去标注);
4.模块间隔:这个位置其实不是太重要,我习惯标注上这里,麻烦能少则少。5.图片+文字:这个应该比较常见,只标注一个单位(图+文)就可以了。
图片需要标注宽高,因为工程师要设置图片区域,从后台调取,可以这么说,软件里除了横屏撑满的图,基本上所有的图片都要标注宽高。
图片距离上下左右的距离,文字大小颜色,这里的文字其实算两个控件,标题文字以及说明文字,需要单独标出。
Tab Bar:
这个位置其实比较特殊,你可以单独标注图标大小+文字大小;还可以图标文字算作一个控件,整个切出来;
我们工程师的习惯是用整个的,也就是图标+文字算作一个ICON,所以我基本不怎么标注单独的图标(这里可以和你的搭档去沟通一下,看他是什么开发习惯)。关于列表页类型的标注问题
普通的列表有两种方法(去问你的搭档,他喜欢用什么方法): 1.标出行高,行内元素居中;
2.标出行内元素,元素上下间距,确定行高; 每种元素的位置如何确定:
通常标注的都是元素距离屏幕最左侧的距离,比如上图的图标元素距离左侧24px,文字元素距离左侧100px。
标注这个东西没有固定的方法,工程师的开发习惯不同,标注方法也不同。
该怎么标注虽然可以在网上找到方法,但那不一定适合你,一定和自己的搭档勤沟通,方法是死的,人是活的……
所有的页面标注总结起来就是:标文字,标图片,标间距,标区域;
(上述图标出现了45px的单数,因为软件自动吸附上去了显示了图标本身的尺寸,切图的时候记得输出个偶数尺寸的切片)
Part 4 切片资源的输出
切之前务必要和你的工程师搭档沟通一下,该如何去切才能配合他的开发。
全局性的切图常见问题
①
你的所有设计尺寸,包括图形效果,应该尽量使用偶数。
技术开发使用的尺寸是设计稿像素尺寸的一半,也就是说,如果你用24px的字体,技术那边就是设置为12px;
所以标注的时候务必使用偶数,为了保证最佳的设计效果,避免出现0.5像素的虚边。②
切图尺寸应该提供几套?
ico_car.png
IPhone2G,3G,3GS使用(好像没人用这手机了吧)ico_car@2x.png
IPhone4,5,6优先加载此尺寸图片(不是必须使用这个尺寸,是优先加载调用这个尺寸)ico_car@3x.png IPhone6 plus使用的尺寸
可以简单的理解为倍数关系(其实是为了满足不同分辨率,我觉得不用过于深究),如果你使用IPhone 6尺寸做设计稿,那么切片输出就是@2x,缩小2倍就是@1x,扩大1.5倍就是@3x了。
理论上,为了达到最好的视觉效果,你应该输出三套尺寸,推荐输出三种尺寸的切片资源。我的工程师搭档要求我给两套尺寸就可以,也就是@1x @2x的两种尺寸,因为我们没有6 plus的测试机,所以看不到效果,据他说应该不会太失真,但是为了保证效果,我还是给三套尺寸。
另外现在几乎看不到3GS了,所以需不需要提供一倍图,还是要和工程师讨论一下~ @1x @2x @3x是开发工具Xcode软件需要的UI资源,命好名称后,IOS设备会自动的选取合适尺寸。
③共用资源的图片,输出一张就可以
类似这种重复的按钮之类的,只要提供一张共用的资源就可以了;上面的文字是技术写上去的。
理论上按照最佳视觉效果,你应该提供多尺寸的图片;但通常我只提供最大尺寸的一张图片即可,这一点要和你的搭档沟通好,却问他需要什么方式。
④切片的输出格式
文件→存储为Web所用格式
位图格式:PNG 24,PNG 8,JPG
在JPG和PNG两种格式图片大小相差不是很大的情况下,推荐使用PNG;如果图片大小相差很大,使用JPG。
欢迎页面,ICON一定要使用PNG格式,在不影响视觉效果的前提下,可以考虑使用PNG 8;
矢量图格式:PDF,SVG
IOS原生支持的两种矢量图片格式,但是支持的一般,并不能保证100%把所有图片效果渲染出来;
为了保险起见,我通常不使用这两种格式,推荐还是使用位图,如果以后技术提升,100%支持SVG和PDF这种矢量格式图,那个时候也许不用提供这么多套尺寸了~ ⑤图标的点击区域
最小点击区域问题:
IOS人机指导手册里推荐的最小可点击元素的尺寸是44*44 point(点),在设备上1 point等于1像素,所以转换成像素就是44*44像素,换算成物理尺寸大概是7mm左右吧(人机工效学研究中得出的结论:用食指操作,触击范围在7mm左右合适;用拇指操作,范围在9mm左右合适)。据说这个尺寸下,不容易出现误操作,误点击;小于这个尺寸,点击就会变的有些不太准确,一向注重用户体验的苹果公司定义这个最小点击尺寸也不是没根据的……
所以现在做设计,为了图标精致,你可以把图标做的小一些,但是切图输出的时候,要考虑用户点击难易度的问题,所以,切图的时候,涉及到需要点击的小图标的时候,普通屏幕还是切44px大小,高清屏就需要切88px,不够的地方用透明区域补全,否则用户点击的时候会比较困难,会很不灵敏。⑥图片图标的不同状态
每种图标或者图片如果有不同状态,每一种不同的状态都需要进行切片输出。
比如按钮有正常(normal),按下(pressed),选中(selected),禁用(disabled)等多种状态,最常出现的就是normal→pressed→normal;某些特定按钮控件会出现选中状态,具体情况具体分析吧。这里显示的是你要知道按钮可能有几种状态……
切片的命名规则
命名并不是统一的规范,不同的公司不同的工程师有着自己不同的命名规范和命名习惯,但是大致还是有迹可循的,一般是:
切片种类+功能+图片描述(可有可无)+状态.png 名称应使用英文命名(中文不识别,推荐小写字母),不要以数字或者符号当作开头,使用下划线进行连接。
举个例子:一个首页的处于正常状态的确定按钮 btn_sure_nor.png btn_sure_nor@2x.png 切片种类是按钮(btn);功能是确定(sure);状态是normal(正常)我通常是以这种命名方式进行命名,如果你的公司有设计文档,去看看之前留下的命名规范,如果没有,那就去问工程师吧。
Tab bar(底部栏)
说说Tab bar这里,因为比较特殊。
如果单纯的只有图标,自然是只切图标就好了; 早上和工程师沟通,这里该怎么切,工程师给的建议是 图标+文字的模式,图标最好单独切,文字后面程序加上去。
另外记住,同一模块的图标切片大小保持一致,上图的四个图标本身尺寸并不相同,但是切图的时候你需要切出相同尺寸的阴影大小,便于工程师开发使用。该怎么切图,还是要和你的工程师搭档去沟通一下;
以下是常用命名,这是我的命名习惯,并不是规范,所以要灵活,如果实在不知道英文,就用拼音代替也行。
Part 5 工作常用数据
你需要使用的字体:
如果是用Mac设计的小伙伴,直接就用苹果黑体字就好了;不过用Windows的就没那么幸运了,PC上还没和IPhone默认字体效果完全一样的字体,通常都是拿其他字体代替。苹果丽黑
Hiragino Sans GB W3(普通)/W6(粗体)
比较接近IPhone字体的一款字体,这是我之前一直使用的设计字体。
黑体-简
STHeitiSC-Light
Mac里面拷出来的苹果黑体,比较贴近IPhone手机字体,目前在用。
我会把这两款字体上传,有需要可以下载。
关于字体大小的问题
顶部操作栏文字大小
34-38px 标题文字大小
28-34px 正文文字大小
26-30px 辅助性文字大小
20-24px Tab bar文字大小
20px 文字大小只是一个范围,这要根据设计的视觉效果来决定,不要死记硬背,但是切记,字体大小要用偶数。
你需要知道的IPhone设计尺寸(这里是一个整屏的尺寸包括了状态栏)320*480
IPhone3GS(我没见过3GS实体机,只在网上见过图片,但你需要知道这个尺寸)640*960
IPhone 4/4s(4时代的设计尺寸)640*1136
IPhone 5/5s/5c(5时代的设计尺寸,虽然现在出来6/6 plus,但还有人再用这个尺寸设计)
750*1334
IPhone 6(目前最新的设计尺寸,基本上现在做IOS的APP设计,用这个的应该最多)1242*2208
IPhone6 plus(这是标准分辨率,也就是设计需要的尺寸;另外还存在物理分辨率是1080*1920,这并不需要深入理解。plus还涉及到横屏,横屏是是没有状态栏的,设计横屏时可以参考IPad的设计模式)
你需要提交的启动页面
这是开发工具Xcode提供的LaunchImage(启动页面)的各项尺寸,不过好像现在已经改了,这还是工程师很久之前给我的,咋一看是不是吓一跳?工程师是按照IOS的系统版本来设置的,但你是设计师,你是按照IPhone的版本来作图的,所以其实没有那么多,真实情况下,我们的工程师要求提供以下几个尺寸: 640*960(4/4s)640*1136(5/5s/5c)750*1334(6)1242*2208(6 plus)
2208*1242(6 plus的横屏尺寸,如果你们的软件支持横屏模式,你就需要做一张横屏的启动页面)注意,启动页面一定要是PNG格式的
图标的提交尺寸
IOS系统可以自动把图片裁剪为圆角,所以提交图标的时候,你只需要提交正方形的PNG图片即可。
因为需要的图标非常多,不可能全部加进去,只能选择最好的尺寸,我们的工程师要求我提供以下图标尺寸:
1024*1024
Retina APP Icon for APP Store(高清屏的APP Store)512*512
APP Icon for APP Store(普通屏幕的APP Store)120*120
6的主屏幕尺寸
114*114
5/4s/4的主屏幕图标尺寸 57*57
3GS的主屏幕图标尺寸 58*58
Retina Settings图标尺寸 29*29
Settings图标尺寸
提交的图标尺寸不是固定的,所以,去找和你搭档的工程师,让他给你出一份需要提交的图标尺寸文档。
差不多用的到的就这些,有时间可以去查看一下苹果的IOS人机指导手册或者开发文档,上面有更加详细的数据说明。
但实际工作中需要的并不像手册上提供的尺寸那么多,所以工作之中,和你的工程师搭档去沟通,你要知道的是你们公司开发所用的数据,而不是苹果提供给你的数据。
本篇是之前五篇的汇总,保留的基本全是工作需要的东西,至于更多的感想以及我对设计现状的思考,以及一些下载素材,可以去看看其余的五篇文字以及番外,对你应该有些许帮助吧。
ios界面设计规范 篇2
1 IOS平台客户端应用开发的环境及架构分析
1.1 IOS平台客户端应用开发的环境及架构分析
处在当前的全面改革深化阶段, 我国的各个领域的发展都进入到新的局面, 在移动设备操作系统领域的发展过程中, i OS平台系统自身所具有的优势也使其在应用领域比较广泛。对于i OS平台I客户端的应用开发环境和构架层面来说, 这也是集成度最高的, 只要进行系在安装Xcode软件就能将开发环境得以相应建立, 在包含的内容类型层面比较多样, 主要有编译环境以及模拟器的性能测试工具等等。另外这一搭建的环境能够随着系统升级而进行发布新的版本并向下兼容。在这一客户端应用开发的框架层面主要就是MVC框架, 其主要的优势就是在可维护性以及低耦合和可扩展性层面有着显著体现。结合功能的不同还能够进行分成多个模块。
1.2 IOS多线程技术分析
对于多线程这是成熟APP当中不可或缺的一项技术, 如果是将所有的操作都在一个线程当中进行运算, 就必然会对界面的响应造成很大的干扰, 并且对操作的程序也会造成很大的影响。对于i OS多线程技术主要有几种, 其中在NSObject的perform Selector In Background:with Object:方法层面, 其是多数类的父类, 并封装了简单方便的多线程方法, 在这一技术方法上能够将线程的内容作为函数写在类中。还有就是NSOperation类, 这是经过封装的多线程抽象类, 通过这一方法就能够在接口上多样化呈现, 从而来对线程的运行得以有效控制, 这一方法的应用相对比较广泛。无论是采用哪一技术方法都绕不开Run Loop这一要素, 其作为线程中比较重要的构成部分在计时器以及监听网络请求反馈层面有着比较广泛的应用。
另外, 对于Comet技术而言, 其主要是在Web当中进行应用的推送技术, 其能有效利用无状态HTTP请求模拟双向通信, 这样就能够使得服务器可实时将更新信息传送到客户端, 对频繁的查询请求就能有效避免。对这一技术进行实现主要是通过长轮询以及iframe流的方式完成的。
2 i OS平台客户端应用开发技术点以及规范化实施
2.1 i OS平台客户端应用开发技术点分析
对于i OS平台客户端应用开发技术点在软件的开发类型上是多样化的, 并且在开发的实际环境也会存在着很大不同, 从表格视图使用方法层面来看, 表格能够提供基于滚动列表的交互类, 对小型设备是较为适合的。对于标准化的i Phone表格主要是通过简单化有着多单元格的滚动列表所构成, 作用就是能有效提供可操作数据索引, 这样就比较方便用户对交互条目的找寻。从数据源的方法层面来看, 对表格的显示需要每个表格都要能有三个核心方法。
重用单元格层面在节省内存能为每个单元格制定一个标示符, 对于不相同的单元格要能够采用不同的ID。对于制定数据源内容上这一外部源成为数据源就表示着负责表格的查询返回到了单元格内容的对象,
另外, 对于应用程序的优化过程中, 主要就是通过设置断点以及单步执行代码的方式, 从具体的操作过程中首先要对XCODE中的断点按钮进行单击, 然后对菜单中的Run—Debug进行选择, 在这一操作过程中要注意程序启动以及对空视图的显示, Breakpoints就对调试器的程序执行暂停加以告知, 然后就会出现剪头表示断点, 在断点被禁用的时候调试器对其忽略。可将其拖出Xcode gutter的区域, 这样就能使得Breakpoints消失。
2.2 IOS平台客户端应用开发规范化实施
对i OS平台客户端应用开发过程中要能够结合实际的内容进行规范化处理, 开发中要能分成两条线路, 首先可通过交互逻辑进行实现, 这样就能够有效实现用户对主界面的观看, 在诸多应用中能见到的页面。这一页面就涵盖着页面的入口, 在顶部的导航栏返回按钮能够实现二级页面出栈以及一级页面间的逻辑关系。通过对这一系统的应用来提供新的方法, 如下所示:
[self.navigatioe Controlleer.navigaition Baree t Backgroend Image:iamge_fi xfor Bar Metrics:UIBa r Metrics Default];
以上方法中的iamge_fi x主要就是指图片变量, 针对有关兼容性的问题就要采取相应的方法进行有效解决。要能够对低版本系统运行过程中将产品功能得以实现, 而在高版本的方法层面也要能够得以有效实现。然后需要按照交互逻辑对递进后续的页面得以实现。除此之外就是要能够依照着核心的功能加以实现, 在诸多的功能点基础上就能有效对前期UI独立实现得以脱离, 并能够高效的整合到主体代码当中。
3 结语
总而言之, 对当前的操作系统的不断升级优化背景下, 要能够对客户端的应用开发得以充分重视。智能终端在当前的广泛应用, 已经在人们的生活中各个层面得到了作用发挥, 随着硬件性能的要求提升以及网络环境的不断升级, 对于终端应用的要求也随之而得到了有效提升。加强对i OS平台客户端应用开发的理论研究就更为重要, 此次主要就i OS平台客户端的开发环境以及结构和技术点进行了分析, 希望能够对实际的应用开发提供一点思路。
参考文献
[1]王海南, 邵国强, 介龙梅.基于iOS平台塔防游戏的设计与实现[J].软件工程师, 2014 (06) .
[2]周建亮, 朱晓民.基于iOS平台智能点餐系统的设计与实现[J].软件, 2015 (01) .
ios界面设计规范 篇3
SATA Revision 3.2标准是什么?从名字上来看,它肯定是SATA 3.0标准的后续版本。实际上并不完全是这样,因为SATA 3.2包含的内容要比SATA 3.0更多,尤其是在目前机械硬盘逐渐式微、SSD大行其道的情况下。从SATA-IO组织的官方说法来看,SATA 3.2的内容还是相当丰富的,其中包含了针对高速存储设备的SATA Express接口、新增加的M.2接口、全新的SATA USM接口以及一些节能和电源管理的新技术。虽然内容看起来多了很多,但其中大部分内容都是技术整理、重新规范,因此整体新内容不多。
借路的高速接口——SATA-Express
SATA-Express可以简写做SATAe。从SATA-IO相关白皮书内容来看,SATA-IO将存储系统分为三个档次,分别是SSD、SSHD(就是混合硬盘)、HDD,这三个档次的产品价格和性能是从高到低依次排序的。不过,随着技术发展,更快速的闪存颗粒的诞生、更多的存取通道的加入、更强大的控制芯片的研发,目前SSD的速度持续增长,SATA 6Gbps已经满足不了SSD性能增长的需求了。于是,SATA-IO组织需要制定更新的标准来适应发展,比如SATA 12Gbps。但这实际上并没有这么容易,因为对于串行的SATA规范来说,如果要进一步加快传输速度,不但成本较高,而且电源耗费将会更为明显,能耗会明显降低,且不够经济。
于是,SATA-IO选择了目前PC中使用最广泛的PCI-E接口作为高速SATA接口发展的目标,这就是SATA Express。为了区分不同设备的使用,SATA-IO开发出了SATA Express/AHCI和SATA Express/NVMe两种不同规格,前者用于兼容性设计,完全兼容旧式支持AHCI的设备;后者这是全新的驱动模式,用于新的SSD设备支持,用于释放更强大的传输性能,两类接口颜色设计等不尽相同,也不能互相插拔。这两种设备的最大传输速度都可以达到2GB/s,远远超过目前的SATA 6Gbps,还会随着PCI-E技术的发展而进步。
从实际性能来看,采用PCI-E 2.0×2的SATAe的有效数据传输速度达到780MB/s,即使这样,也远远高于SATA 6Gbps的有效传输速度560MB/s,超出幅度更是接近40%。这还仅仅是PCI-E 2.0的数据,目前所有SATAe的PCI-E控制器的都基于PCI-E 2.0,在明年可能会升级到PCI-E 3.0,如果带宽和估计一样翻番的话,那么至少1GB/s的实际数据带宽将成为常态,超越SATA 6Gbps的实际带宽至少100%。目前已经有厂商在开发相关SATAe的设备,不过由于英特尔不打算在9系列芯片中支持SATAe,因此目前要么使用第三方厂商的芯片,要么只有等待英特尔、AMD等厂商的下一代产品了。
待完善的通用接口——SATA USM
SATA USM是SATA-IO组织推广的新接口,它的目的是替代USB、Lighting,成为一种全新的通用传输接口。不过这项技术发展并不太顺利。主要原因除了SATA-IO推广乏力外,还有接口本身设计的问题,比如接口过长、过厚,不太适合在移动设备上使用。
之前SATA-IO组织也推广过诸如e-SATA这样的扩展接口,不过没有供电的设计使得它使用非常麻烦。SATA USM改进了这一点,提供了供电支持。它的接口分为两个部分,其中数据传输部分本身还是SATA的样式,此外还增加了独立的供电接口(基本规格与电源上扁平的SATA供电线类似),这也导致SATA USM的体积变得比较大,特别是接口长度比较长,易用性有一定程度的降低。不过这样设计的好处也很明显,那就是SATA USM接口可以直接插接目前的硬盘并读取数据。SATA USM由于设计上的问题,还需要进一步改进才能有所作为。在新的SATA Revision 3.2中,SATA-IO进一步降低了SATA USM接口的厚度,从之前的14.5mm大幅度降低至9mm。厚度虽然降低了,但长度却没有什么变化。SATA-IO还得想出办法来,才能更好地推广SATA USM了。
超轻薄设备的最爱——M.2
说起M.2接口,可能之前都一直默默无闻,突然出现在市场并迅速蹿红的它,现在已经成为了超轻薄设备的最爱。相比之前的SATAe等接口而言,M.2接口既能兼容SATA,又能使用PCI-E等高速接口,因此迅速得到了市场的肯定和热捧。M.2接口不仅速度快、兼容规格多,尺寸还特别小。基本款M.2接口的SSD,尺寸为42mm×22mm,在配置单面芯片时厚度仅为2.75毫米,配置双面芯片时厚度为3.85毫米。除了基准规格外,SATA-IO还推出了三种扩展规格。这三种扩展规格主要适用于更大容量的SSD产品,它们都是22mm款,但长度更长一些。最长可以达到基准M.2产品的2倍以上甚至更长。
此外,M.2接口还可以有多种体积配置可选。M.2设备在插槽处设计了两个空槽,分别称为B键锁和M键锁。其中当B键锁激活时,M.2设备可以选择使用SATA接口或者2×PCI-E 3.0接口,速度为6Gbps(600MB/s)或者2.0GB/s;当M键锁激活时,M.2设备则仅能使用2个2×PCI-E 3.0连接,速度提升到4.0GB/s。M.2本身可以面对多个应用场合,根据SATA-IO的计划,B键锁推荐给SSD、缓存或者WWAN模块使用,M键锁推荐给高性能SSD或者缓存使用。其中缓存技术主要是指诸如英特尔在Z68上就发布的Smart Response Technology固态硬盘缓存技术或者其类似技术,这项技术通过大容量SSD作为系统的缓存,能大幅度提高在系统使用过程中的数据响应速度。之前这项技术受制于SATA接口的速度,效果表现一般,在加入了M.2这样的PCI-E通道传输后,类似的缓存加速技术可能会有比较大的发展空间。目前,M.2接口已经成为最有希望、发展速度最快的下一代磁盘接口,尤其在笔记本电脑、超级本等移动设备上,M.2接口更是颇受欢迎,同时还被广泛拓展到台式电脑甚至平板电脑等设备上。
绝对超迷你——microSSD
M.2已经够小了,但是对很多超级迷你的设备来说,M.2还是略微大了点。别急,除了M.2外,SATA-IO还制定了microSSD规范。microSSD体积甚至和美分硬币相当,最大容量为128GB。从技术角度来看,microSSD利用堆叠封装技术,将控制芯片和SSD颗粒封装在一起,从而制造超小体积的SSD芯片。这种技术能有效减少产品的体积,且不会损失太多性能,不过昂贵的成本和较小的使用范围,使得它可能很难出现在消费级市场上。
SATA未来的发展路标
SATA-IO组织显然将SATA 3.2当作了SATA未来的发展方向,它几乎囊括了大量的新存储接口规范。接下来,SATA-IO在进一步完善SATA Express的同时,还将致力于SATA Express的商业化。作为存储业界唯一制定标准的组织,SATA-IO的标准推广在没有明显的竞争对手的情况下应该不是什么难题。对普通用户来说,在SATA 3.2中,和普通用户关系最大的就是SATAe和M.2两种规范了。这两者都将成为未来高速SSD设备的接口规范。现在我们需要做的就是静静等待SATA新规范的产品上市、享受高速快感就可以了。
iOS设计模式桥接 篇4
何时使用桥接模式
1、不想在抽象与其实现之间形成固定的绑定关系(这样就在运行时切换实现)
2、抽象及其实现都应可以通过子类化独立进行扩展;
3、对抽象的实现进行修改不应影响客户端代码
4、如果每个实现需要额外的子类以细化抽象,则说明有必要把它们分成两个部分
5、想在带有不同抽象接口的多个对象之间共享一个实现
下面用代码说说这个设计模式
先展示下调用的代码
//// ViewController.m// BridgeTest//// Created by qitmac000246 on 15/7/13.// Copyright (c) 杜甲. All rights reserved.//#import ViewController.h#import TouchConsoleController.h#import GameBoyEmulator.h@interface ViewController @end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. // 子功能实现 GameBoyEmulator *gbe = [[GameBoyEmulator alloc] init]; // 功能模块调用 TouchConsoleController *tcc = [[TouchConsoleController alloc] init]; [tcc setEmulator:gbe];// 指定功能对象 [tcc setCommand:kConsoleUp];// 实现 }- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end
ConsoleEmulator.h
//// ConsoleEmulator.h// BridgeTest//// Created by qitmac000246 on 15/7/14.// Copyright (c) 20 杜甲. All rights reserved.//#import
ConsoleEmulator.m
#import ConsoleEmulator.h@implementation ConsoleEmulator- (void) loadInstructionsForCommand{ }@endGameBoyEmulator.h
#import ConsoleEmulator.h@interface GameBoyEmulator : ConsoleEmulator@end
GameBoyEmulator.m
#import GameBoyEmulator.h@implementation GameBoyEmulator// 子执行类- (void) loadInstructionsForCommand{ NSLog(@%s,__func__);}@end
ConsoleController.h
#import
ConsoleController.m
#import ConsoleController.h@implementation ConsoleController- (void) setCommand:(ConsoleType)command{ [_emulator loadInstructionsForCommand];}@end
TouchConsoleController.h
#import ConsoleController.h// 控制器子类@interface TouchConsoleController : ConsoleController- (void) up;@end
TouchConsoleController.m
ios界面设计规范 篇5
今年的WWDC发布了200项针对iOS5的更新,现场展示的10项更新包括:
1.“新的Notification Center”
2.“统一的杂志管理中心:Newsstand”
3.“深度整合的Twitter”
4.“强化的Safari”
5.“内置的Reminders”
6.“强化的Camera”
7. “优化的Mail”
8.“免电脑同步”
9.“社交化的Game Center”
10.“内置的iMessage”
在这些Apple引以为傲的新特性里,依稀能看到很多竞争对手的身影:Android的新通知系统、Kikmessager的即时消息、Google的云同步、Windows8的分离式键盘……
是苹果在退步么?已经不能做出创新的玩意儿了么?国外大公司不是一直很注重专利诉讼的么?老乔脑袋坏了么?其实,老乔在下一盘很大的棋。
专利诉讼本身就只是一种打击商业对手的武器。对于苹果来说,手里捏着一大把敌人的小辫子,对手即便发现苹果抄了自己,也不敢来告。专利已经成了核武库,一定要有,但基本不会真用,更多的是吓唬别人。我就抄了,怎么着吧!
专利仅仅是一种赢得商业利益的手段。对于苹果来说,此时重要的不是用憋屈的步伐通过对手的专利地雷阵,而是完善iOS的生态系统。在这一点上,苹果有自己核心的设计思想。为了达成该目的,自然是怎么好用怎么来。通过分析WWDC上着重展示的10项更新,我个人举得苹果应该有这样的设计思想:
1、为源于生活的需求革新效率,而非重新发明需求
用户生活在客观的现实生活中,他们的一举一动都由“需求”在驱动。当Nokia还在以换壳为本时,苹果就为了帮助用户满足“随时随地获取信息、处理事务”的需求而发布iPhone。
需求是一直存在的。所以,产品应做的,是分析这些需求在以往被满足时存在的缺陷,用新的设计方案和技术手段更快更好更省心地满足它。而非臆断出一些功能,再去招揽用户来用。教科书上曾经有一个马先生讲过,这就叫“提高生产力水平”。
在iOS的更新中,苹果以用户使用手机的实际情景为出发点,选择了“通知中心”、“杂志中心”、“Safari”、“记事本”、“相机”和“无线同步”作为优化点。这是因为这些都是用户在使用手机时能够明显感知到的痛点。
消息中心是第一个登场,但也是抄袭感最强的更新。iOS早期,只支持单任务,并且所有的消息推送都需要官方审批,所以简单的警告框提醒还说得过去。但进入多任务时代后,警告框就很吃力了。因为提醒是有强弱之分的。在运行某程序时,来自其他程序的提醒以警告框的方式出现就会非常干扰当前任务。为了摆脱这个诟病,iOS需要轻柔的提醒方式,以及一个暂存弱提醒的地方。而且,这个地方需要在任何位置都轻松唤出。从上往下被Android用了,从下往上被Palm Pre用了,依据iOS的界面逻辑,左右是平级的,不能用,
所以…抄吧,谁怕谁啊。但苹果不会抄的那么没品。它将消息按照归属程序做了聚类,查看更方便。同时,将轻量的widget放在这里,以便用户经常查看信息。
浏览信息是手机的强项,但管理却不是。所以,苹果说:“我来帮你善后”。于是,就有了Newsstand。用户不必再一期期地去下载杂志,归类,分组。有了Newstand,只需要订阅就可以了。这就是Apple提升的生产力:用更高效的方式解决已有的问题。
“Safari”、“记事本”、“相机”和“无线同步”的优化也基本遵循同样的思路。
手机更多的用于碎片时间,阅读环境很不稳定。于是Safari就增加了Readlist的功能,帮助用户暂存没读完的页面。
糟糕的记忆力需要人们随时记下可能遗忘的东西,但每多带一件东西就多一份重量。而手机是最随身携带的私人物品,所以老乔决定把它列为手机的基本应用,减轻用户的负担。同时,它还支持云同步,省去了用户在多台设备间倒腾待办事项的麻烦。
抓拍生活中的趣事是相机应尽的责任。但按照现在的流程,掏出手机找出“相机”再打开它,镜头早就错过了。于是苹果就简化了打开相机的流程,直接一步到位。
其实“创新”并不遥远。它需要对生活的热爱,用心体会其中喜怒哀乐。只要思考如何才能让生活更美好,就是在创新。永远不要为了创新而创新,那只会刻意增加无用的“差异”,让产品支离破碎。
2、One Person,One Life
每个人的人生都应是唯一且统一的。人们在这个唯一的人生里,去和其他人的唯一的人生交流。但是,当代人的人生都被隔离在一个又一个产品中。一个人在甲产品中做的事儿,交谈的人似乎都与乙产品的世界无关。
生活想回归简单,就需要重新整合这些产品中的信息,打通围墙。用户,只不过是要过用这个产品去过他的这个生活,和他在现实世界里认识的交流。我们不要把用户搞得人格分裂啊。人只有一个,办公室里的小Q就是家里的小Q,就是飞机场候机的小Q;电话那头的小Q就是对话框那头的小Q,就是Google Latitude里地图上标的小Q,就是twitter上刚刚更新的小Q。
为了帮用户整合支离破碎的世界,苹果强化了云同步:用户不必再去想如何把一个个世界的碎片粘起来。为了更无缝的沟通,苹果对twitter做了深度整合:用户不必再“到twitter的世界里”更新生活。这样,Twitter已经融为了生活的一部分。它是嘴巴的自然延伸,是和视听嗅味触一样感受世界的超能力。
3、Be the Trend,or Push Forward the Trend
这应该是下很大的棋时所应有的思想。拥有海量的用户有两种方式,一种方式把服务做到极致,让用户非常需要你的产品,让自己成为潮流。但这受限于时机、受限于能力、受限于战略眼光,所以并非总是成功。另一种是,就是为别人的潮流“推波助澜”,成为用户追随潮流的最佳工具,最佳拍档。给沙漠里淘金热的人送水也是能发大财的。要对用户的需求敏感。
让苹果去重建一个twitter、facebook或是flickr,都显然是不可能的。所以,苹果要让iOS设备成为twitter、facebook和flickr用户的最佳拍档。于是,发推更方便啦,手机上也能简单编辑照片上传啦,掏出手机抓拍照片也能在3秒内搞定啦。那么,不用iPhone还用谁呢?
只要是能让用户觉得iOS设备很方便,并且苹果也能够方便复制的,乔布斯就绝对的毫不留情。他要把iOS打造成完美的生态系统,用户可以用它吃喝拉撒不出门。还有什么比这依赖度更高的么?所以kikmessager类的短信工具,wifi同步的工具等等,都在劫难逃。苹果搞出App Store弄开放平台,绝不是良心发现。它只是为了让自己的生意更红火罢了。
ios界面设计规范 篇6
NSNumber
//简化前的写法:
NSNumber *value1;
value1 = [NSNumber numberWithInt:12345];
value1 = [NSNumber numberWithFloat:123.45f];
value1 = [NSNumber numberWithDouble:123.45];
value1 = [NSNumber numberWithBool:YES];
//简化后的写法:
NSNumber *value2;
value2 = @12345;
value2 = @123.45f;
value2 = @123.45;
value2 = @YES;
//装箱表达式也可以采用类似的写法:
NSNumber *piOverSixteen1 = [NSNumber numberWithDouble: ( M_PI / 16 )];
NSString *path1 = [NSString stringWithUTF8String: getenv(”PATH“)];
//可以分别简写为:
NSNumber *piOverSixteen2 = @( M_PI / 16 );
NSString *path2= @( getenv(”PATH“) );
//对于字符串表达式来说,需要注意的是表达式的值一定不能是NULL,否则会抛出异常,
NSArray
//对于NSArray的初始化来说,有非常多的写法,这里就不再一一罗列,我们直接看新的写法
NSArray *array;
array = @[]; //空数组
array = @[ a ]; //一个对象的数组
array = @[ a, b, c ]; //多个对象的数组
//编译器在处理时:
array = @[ a, b, c ];
//编译器生成的代码:
id objects[] = { a, b, c };
NSUInteger count = sizeof(objects)/ sizeof(id);
array = [NSArray arrayWithObjects:objects count:count];
//注意,如果a,b,c对象有nil的话,运行时会抛出异常,这点和原来的处理方式不同,编码的时候要多加小心,
NSDictionary
//同样,对于字典这个数据结构来说,有很多种初始化的方式,我们来看新的写法:
NSDictionary *dict;
dict = @{}; //空字典
dict = @{@”key1“:@”value1“ }; //包含一个键值对的字典
dict = @{ @”key1“ : @”value1“, @”key2“ : @”value“, @”key3“ : @”value3“ }; //包含多个键值对的字典
//采用上述写法构建的容器都是不可变的,如果需要生成可变容器,可以传递-mutableCopy消息。例如
NSMutableArray *mutablePlanets = [@[
@”Mercury“, @”Venus“, @”Earth“,
@”Mars“, @”Jupiter“, @”Saturn“,
@”Uranus“, @”Neptune“
] mutableCopy];
ios界面设计规范 篇7
当前国内文化旅游从研究重点来看,主要集中在实践研究,理论研究稍稍落后,还不能赶上实践发展的步伐。从研究时间看来,文献研究主要集中于2006~2009 年,研究数量增长迅速。从研究内容看来,文献主要集中在旅游产业内涵、文化产业与旅游产业互动发展等方面。其中,有关国内文化旅游产业研究文章数量和其他占到总数的1/5。 从研究方法来看来,国内文化旅游产业主要集中在描述性和概念性,属于定性研究,构造模型和数理统计方面涉及较少,缺乏定量研究。目前主要研究领域:文化旅游产业概念的界定;民族文化旅游产业发展研究;文化产业与旅游产业互动发展研究。
1 系统流程分析
旅客在城市开始旅游之前,可以通过旅游APP来了解之前游客在旅行中的一些安排,参考驴友们旅游心得来最终判断适合自己的景点,该应用采用提供推荐地,目的地,社区服务等相关旅游信息让游客能快速规划自己的旅游行程,让旅游项目变得更加丰富多彩。通过旅游者的分享心得,游客可以从不同的心得里选择喜欢的感兴趣的城市特色景点,通过比较不同地点来最终确定自己路线,应用的推荐点,也能为城市的景点做一个很好的宣传。让旅客节省更多时间和精力,沿用驴友先前路线或者推荐路线,不仅节省了时间。更是一个很好的宣传,在旅途中,遇到的各种问题以及沿途的风景都会由前人的经验而让此次旅行变得更加愉快和惬意,少去许多不必要的麻烦。
在旅游管理系统中,打开旅游APP直接进入到首页界面,会看到很多关于不同的旅游推荐地,比如北回归线穿过的小岛,台湾,宁静与狂野中的泰国等这些独特美丽的城市和国家,同时也会看到世界各地的驴友在此留下的足迹,会有他们对这个城市的一些看法,以及他们在旅途中的一些相关行程,,同时也会看到他们上传的一些美丽的城市风景照片和个人的美照。如果自己心里有自己想要去的地方可以直接搜索目的地,以及相关的一些如酒店、签证、旅行装备、摄影、骑行、潜水等服务。在进入到个人中心前必须先要登录,如果没有帐号事前得注册。只有登录成功后才能有权限创建新游记,发表自己的旅游心得,同时也可以关注自己感兴趣的一些驴友,关注和评论他们的动态,同时也会收到他们的回复以及相关推荐地。在个人中心里面,旅客可以上传自己喜欢的照片和视频,可以收藏自己感兴趣的一些地方等。旅游管理系统流程图如图1所示。
2 具体功能设计
整个系统客户端的功能设计主要分三大部分,分别为:首页管理模块,搜索管理模块,旅游管理模块,用户注册登陆模块、个人中心管理模块、投诉反馈模块。其主要框架图如下:
2.1 旅游管理模块
进入主页面,搜索页面后,进入到旅游管理界面,点击旅游管理按钮,又将进入六个子模块:旅游美食、旅游住宿、旅游交通、旅游景区、休闲娱乐、旅游行程。流程图如下:
2.1.1 旅游美食
旅游美食包括一些特色餐饮、招牌饭店、美食团购、美食分享。
1)特色餐饮:根据当地的人文历史对目的地的特色菜系宣传,包括饮食文化,制作特色等等。适当结合一些特色图片,视屏等内容,并附加一些相关评价信息。
2)招牌饭店:通过图片、文字对招牌饭店做一些宣传。介绍当地地方名店,美食街区饭店的历史沿革、经营状况、服务水平、星级标准、价格信息、地理位置、交通信息、评价信息等。对饭店的价格水平做出合理的公示,可以为杜绝饭店哄抬价格提供帮助。要求通过APP宣传的饭店必须保证质量,遵守经营法规,维护消费者权益。开通顾客的评价写入,用户在消费结束后,可以通过APP对饭店或者菜系打分、评论。
3)美食团购:联合高质量的餐饮单位,开通美食团购平台,通过手机APP团购美食。
4)美食分享:介绍特色饮食、招牌饭店的官方微博或开通微信公众账户,并对信息介绍的相关内容开通分享设置,用户可以直接分享到自己的社交空间当中。利用LBS技术实时显示已消费顾客的体验分享。
2.1.2 旅游住宿
旅游住宿板块主要包含以下内容:酒店介绍、酒店预订、酒店团购。
1)酒店介绍:对目的地的住宿酒店分类介绍包含:快捷酒店、星级酒店、今夜特价、青年旅社、旅馆、招待所等。通过图片和在线评论反应酒店的住宿环境、服务水平、住宿标准和住宿口碑;详细介绍酒店房间价格及相关优惠信息;详细的介绍酒店的位置信息,以及交通路线,并可以通过地图导航查询至酒店路线。开通顾客的评价写入,用户在消费结束后,可以通过APP对酒店打分、评论。
2)酒店预订:手机在线预订酒店,借助其他支付软件通过手机随时预订酒店;提供酒店的前台预订电话,方便电话预订。
3)酒店团购:联合目的地酒店,开通酒店团购,或者通过信息链接到相关的团购软件上,如美团网等。
4)社交互动:介绍相关酒店的官方微博或开通微信公众账户,并对信息。介绍的相关内容开通分享设置,用户可以直接把介绍信息或者住宿评价分享到自己的社交空间当中。利用LBS技术实时显示住宿后顾客的体验分享。
2.1.3 旅游交通
旅游交通板块主要包含以下内容:航班介绍、列车时刻、汽车时刻、公交
线路、旅游租车。
1)航班介绍:介绍途径目的地旅游城市的航班时刻表、航班号、机型等相关的飞行信息;机票价格;机场地理位置及交通信息,地图导航。
2)列车时刻:介绍目的地城市的列车车次,列车时刻;火车站地理位置信息、交通信息、附带地图导航。
3)汽车时刻:介绍目的地汽车站汽车运营班次,客车时刻;汽车站地理位置信息、交通信息、附带地图导航。
4)公共交通:介绍目的地的公交线路,相应站点,尤其是联通标志建筑、景点、核心交通站点的公交线路介绍,以及公交运行早晚时间。介绍目的地出租车的起步价格。
5)旅游租车:介绍旅游租车的相关单位。提供租车电话,租车费用,用户评价等。
2.1.4 旅游景区
旅游景区板块主要包含:景区介绍、景区浏览、门票团购。
1)景区概况:介绍知名景区景点的历史背景和人文背景;旅游淡旺季时间分布;最佳游览时间;景区开放早晚时间;票务价格信息,包括联票,证件优惠票信息;游客评价信息,游客可以通过APP对景区进行管理和服务上的评价。通过精美图片呈现景区风貌。对于人文历史背景可以通过语音介绍。
2)景区浏览:附带景区电子地图,借助地图导航介绍目的地的景区内的游览线路、最佳摄影位置;通过电子导游对主要景观提供随声的语音服务。
3)门票团购:提供参与团购旅游景区的团购信息。通过APP参团或者其他团购软件。大力发展门票的团购促销为景区倒票现象的泛滥提供解决思路。
2.1.5 休闲娱乐
休闲娱乐:借助LBS技术支持,提供用户周边的休闲娱乐场所信息。包括酒吧、电影院、KTV、网吧、咖啡厅、休闲会所等信息。
2.1.6 旅游行程
旅游行程板块包含:行程推荐,行程推荐:结合目的地景观资源,合理推荐具体的旅游行程线路。
2.2 搜索管理模块
在该模块中,一个重要的功能就是热门搜索、最新攻略,国内旅游目的地。一些重要热门搜索例如酒店,签证,旅行装备,摄影等,还包括一些游记、用户的搜索,
2.3 用户注册登录模块
用户进入到个人中心时,首先要进入一个登录界面。界面中央是用户名和密码的输入框,注册按钮位于登录按钮的右侧,点击注册按钮可跳转至注册界面。密码框下方有一可以保存密码的选中框,方便用户下次登录自动记住用户名和密码。最下方是登录按钮和重置按钮,用户名密码输入正确的情况下,点击登录按钮,即可进入个人中心页面,点击重置按钮,清空用户名和密码。用户名密码没有输入,或者输入错误的情况下,会弹出错误提示。注册界面包括昵称,用户名,密码,邮箱地址。 登录模块流程图如下:
当用户无法登录进去,没有账号,事先需要点击登录右下角的注册按钮,点击进去之后会显示一个操作,有邮箱注册,手机号码注册,取消三个操作。点击邮箱注册之后,首先会有一个拍照头像,然后就会有昵称,邮箱地址,密码,最后点击确定。
2.4 个人中心管理模块
在个人中心管理模块里面,分为三个子模块,创建新游记模块,关注、动态模块,我的中心模块。登录成功后,就会跳转到创建新游记模块,在这里可以写下自己的旅行心得,上传旅行中自己喜欢的照片,视频。
3 总结