百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

iOS与Android用户界面规范(android用户界面设计)

ninehua 2025-05-02 20:30 44 浏览

相信很多人都在开发设计APP时会遇到很多界面上的问题,要以多大尺寸来设计?分辨率是多少?该怎么切图给开发等等

下面的文字就给出一点点技巧总结,但也要给合团队在开发时的习惯。每个工程师们所使用的控件,书写布局习惯来实际移交的图是不一样的,但八九不离十,都是遵循一个原则,便捷开发、自适应强的开发模式。

iOS篇

一、尺寸及分辨率

设计图单位:像素72dpi。在设计的时候并不是每个尺寸都要做一套,尺寸按自己的手机来设计,比较方便预览效果,一般用640*960或者640*1136的尺寸来设计,现在iPhone 6和Plus出来后有很多人会使用6屏幕尺寸来设计。

如果是我来做的话,我会使用640×1136,对Plus做单独的修改适配,因为Plus的屏幕实在是大了,遵循屏大显示更多内容的原则这里本应该是需要修的了,有更好办法的话希望大家可以分享一下。

Ps:作图的时候尽可能确保都是用形状工具(快捷键 U)画的,这样更方便后期的切图或者尺寸变更。

二、界面基本组成元素

iPhone的app界面一般由四个元素组成,分别是:状态栏(status bar)、导航栏(navigation)、主菜单栏(submenu)、内容区域(content)。

PS:在最新的iOS7的风格中,苹果已经开始慢慢弱化状态栏的存在,将状态栏和导航栏合在了一起,但是再怎么变,尺寸高度也还是没有变的,只不过大家在设计iOS7风格的界面的时候多多注意下~

三、图标尺寸

四、字体大小

iPhone 上的字体英文为: HelveticaNeue 至于中文,Mac下用的是黑体-简,Win下则为华文黑体,所有字体要用双数字号。

下图是百度用户体验做过的一个小调查,可以看出用户可接受的文字大小。

五、切图

切图是APP设计中的一个重要过程,关系到APP的界面实现,及各种适配性还有各种性能

IOS在没6plus前,我们只需要提供两种图,普通图及视网膜屏幕图。

以640×1136(640×960是一样的)做的设计图的话就会好办一点。直接出设计图上的原大小图标,比如我们命名一个图片叫 img-line.png,我们给开发的图就要改变这个名字叫 img-line@2x.png 就是在后缀名前加上@2x表示视网膜屏的图,iPhone4的还需要把这个图尺寸按比例缩小50%,得到正真的img-line.png。然后把这两个图移交给开发,iPhone6的图在规范里是与5s使用的是一样的,也是@2x图。有些UI则需要做适当的适配,比如拉长,拉高,这个开发会去做。

对于IPhone6 plus的话范里给出的是@3x相信大家也知道是怎么回事,但如果要使用PS放大的话,大家做图的时候就需要使用形状工具来做,放大后还需要仔细微调,这里就不多做讲解

PS: 在出可按的图片切图时需要注意图片的可按区域大小,有时图标很小,实际切出来的放在上面,用手指是按不到的,我们就需要对图片单独处理,拓宽图片的有效区域,这里是拓宽非放大,就是改变画布大小使图片尺寸面积扩大,使图片四周拓宽多余的透明区域 ,从而改变可按大小。

六、颜色值问题

IOS颜色值取 RGB各颜色的值比如某个色值,给予IOS开发的色值为 R:12 G:34 B:56 给出的值就是 12,34,56(有时也要根据开发的习惯,有时也用十六进制)

七、内部设计

1、所有能点击的图片不得小于44px(Retina需要88px)

2、单独存在的部件必须是双数尺寸

3、两倍图以@2x作为命名后缀

4、充分考虑每个控制按钮在4中状态下的样式,如图:

Android篇

一、尺寸及分辨率

Android界面尺寸:480*800、720*1280、1080*1920

Android比iPhone的寸尺多了很多套,建议取用720*1280这个尺寸,这个尺寸720*1280中显示完美,在1080*1920中看起来比较清晰,切图后的图片文件大小也适中,应用的内存消耗也不会过高。

二、界面基本组成元素

Android的app界面和iPhone的基本相同:状态栏、导航栏、主菜单、内容区域。

Android中我们取用的720*1280的尺寸设计,那我们就说说在这个尺寸下这些元素的尺寸。

状态栏高度为:50px

导航栏高度为:96px

主菜单栏高度为:96px

内容区域高度为:1038px(1280-50-96-96=1038)

Android最近出的手机都几乎去掉了实体键,把功能键移到了屏幕中,当然高度也是和菜单栏一样的:96px

Android为了在界面上区别于iOS,Android4.0开始提出的一套HOLO的UI风格一些app的最新版本都采用了这一风格,这一风格最明显的变化就是将下方的主菜单移到了导航栏下面,这样的方式解决了现在很多手机去除实体键后再屏幕中显示而出现的双底栏的尴尬情景。

三、图标尺寸

Android设计规范中, 使用的单位是dp, dp在安卓机上不同的密度转换后的px 是不一样的

四、字体大小

Android 上的字体为:Droid sans fallback,是谷歌自己的字体,与微软雅黑很像。

同样,百度用户体验的调查中,可以看出用户可接受的文字相应问题。

具体大小,还是那句话,找自己喜欢的app界面,手机截图后放进PS自己对比调节字体大小,切记,一定是高清截图。

五、切图

Android设计规范中单位是dp,dp在安卓机上不同的密度转换后的px 是不一样的,所以按照设计图的px转换成dp也是不一样的,这个可以使用转换工具转换,开发一般会有,也有些开发会使用px做单位,因为做了前期的转换工作。

六、颜色值问题

Android颜色值取值为十六进制的值 比如一绿色的值, 给开发的值为 #5bc43e

相关推荐

配合制导弹药!土耳其推出反无人机武器系统,可全天候拦截无人机

【军武次位面】作者:FriedrichLau据报道,日前土耳其军队装备了一款名为Sahin"沙欣"的反无人机武器系统。该系统由土耳其Aselsan公司开发,旨在摧毁迷你或小型无人机,...

威纶通常见问题18 威纶通触摸屏密码使用的相关介绍

密码1:屏右下角的系统设定列(向左的箭头)进入密码提醒:上传下载的默认密码均为6个1,若不慎忘记密码,因已加密所以原厂也无法解开,请妥善保管密码。若因不可抗力因素造成的忘记密码,只能将屏恢复出厂设置然...

轻松学会威纶通触摸屏上传与反编译

说到上传,大家并不陌生,上传顾名思义:就是把实际触摸屏画面上传到电脑EasyBuilderPro软件上,上传的作用是什么呢?可以修改触摸屏上原有的画面,所以说在上传这两字在工控中是非常重要的,接下来进...

DLL 可以被反编译吗?(dll文件可以编辑吗)

DLL可以被反编译,但存在一定难度DLL(动态链接库)是一种二进制文件,包含了可执行代码和数据。虽然它不像高级语言源代码那样容易被理解,但可以通过一些反编译工具进行逆向分析。不过,反编译后的结果通常...

复古游戏反编译工具遭任天堂下架 工具名或为诱因

Reddit用户mhjhacker1近日发表文章称,自己开发的一款“复古主机游戏逆向工程”工具被其他用户使用,反编译了一款任天堂四十年前的游戏,因而遭到了Itch.io的下架。而相关的另外三个工具也遭...

protobuf之序列化数据和反序列化数据基础知识

什么是protobufProtocalBuffers(简称protobuf)是谷歌的一项技术,用于结构化的数据序列化、反序列化。ProtocolBuffers是一种语言无关、平台无关、可扩展的...

MT管理器-简单实战-去除启动页(mt管理器去除登录界面)

每次打开APP都要看着启动页2秒,很烦人,既然如此我们把它去掉吧。学过Android开发的都知道,APP的每个界面都是一个Activity,然后你点击桌面上的图标之后,其实是启动了这个...

这两个强大的开源C#反编译逆向工具,探索C#桌面应用的小秘密

C#的应用也比较多,有时候,我们想要研究一下别人的优秀的项目,可能会借助一些非常规手段来学习。下面,我就分享几款开源的C#反编译工具。dnSpydnSpy是一个用C#开发,开源的调试器和.NET汇...

一款开源的.NET程序集反编译、编辑和调试神器

致力于发掘、评测和推荐各种高效实用的工具和软件,帮助您在工作和生活中事半功倍。项目介绍dnSpyEx是dnSpy项目的非官方Fork维护版本,一款开源、功能强大的.NET反编译工具和调试器,可用于在没...

记一次噩梦般的经历--论学会反编译的重要性

最近在做一个android项目,因为非开源,github上也没购有私有库,所以就没有提交github管理。昨天我感觉写到了一定程度,一个小的版本已经出来了,于是就想U盘和网盘都备份一下。结果出现了下面...

奇!AI(人工智能)能不能反编译二进制代码为高级语言Java或者C?

一直很好奇某些软件的制作过程,使用的算法。因为自己实现的,写的稀烂,虽然功能达到了,但处理速度和处理效率很低下,于是也尝试使用一些反编译软件,如IDAPro软件。想看看人家怎么实现,怎么做到效果那么...

你知道 Java 中关键字 enum 是一个语法糖吗?反编译枚举类

持续创作,加速成长!这是我参与「掘金日新计划·10月更文挑战」的第7天,点击查看活动详情写下这篇文章,也纯属于是一个机缘巧合,我一个非常要好的朋友程,也是刚刚踏上工作岗位。这个问题也是他踏上岗位...

SpringBoot项目Jar包加密,防止反编译

场景最近项目要求部署到其他公司的服务器上,但是又不想将源码泄露出去。要求对正式环境的启动包进行安全性处理,防止客户直接通过反编译工具将代码反编译出来。方案第一种方案使用代码混淆采用proguard-m...

安卓移动应用代码安全加固系统设计及实现

安卓平台已经逐渐成为最受欢迎的移动终端操作系统,基于安卓系统的软件应用数量众多,同时安全威胁也在不断增加。介绍了Android系统的安全风险及加固的核心技术,据此提出了一种安卓应用程序的安全加固系统,...

代码安全之代码混淆(代码混淆器是干什么的)

防止核心代码泄露以及代码合并每日辛辛苦苦码的代码被轻松破解?机密核心模块被盗用?数据库地址和语句暴露?……这些都是由代码未混淆加密,从而进行泄露的我们目前DLL文件存在的风险:一、直接引用二、反编译...