移动 APP 设计规范参考

一、界面设计规范
- 布局原则:
- 内容优先:以内容为核心进行布局,突出用户需要的信息,简化页面导航,提升屏幕空间利用率.
- 一致性:保持界面元素风格一致,包括颜色、字体、图标等,使用户在不同页面和操作流程中感受到统一的体验.
- 简洁性:避免界面过于复杂,突出核心功能,减少不必要的元素和信息干扰.
- 尺寸与间距 :
- 全局边距:页面内容与屏幕边缘之间的距离应根据不同产品气质设置,常用的全局边距为32px、30px、24px、20px等偶数数值,以引导用户垂直阅读。
- 卡片间距:卡与卡之间的距离需依据界面风格和卡承载的信息量来定义,最小间距不小于16px,最大间距可为20px、24px、30px、40px等,间距颜色可与分割线一致或较浅。
- 内容间距:遵循格式塔相邻性原则,相互靠近的元素看起来属于一组,距离较远的元素则自动划分为组外,以此合理设置内容间距。
- 色彩搭配:
- 对比度:使用高对比度颜色,确保文字与背景、图标与背景等之间的对比度足够,以便内容易读,如深色文字搭配浅色背景,浅色文字搭配深色背景.
- 协调性:选择协调的颜色组合,避免使用过于刺眼或冲突的颜色搭配,保持整体视觉的和谐,可参考色彩理论和配色方案来进行选择。
- 品牌色:突出品牌特色,可适当运用品牌色作为主色调或强调色,增强品牌辨识度,但也要注意与其他颜色的搭配。
- 图标设计 :
- 风格统一:一套应用程序图标应具有相同的风格,包括形状规则、圆角大小、线框厚度、图形风格和个性细节等,以保持整体的一致性和协调性。
- 表意清晰:图标应简洁明了,能够准确传达其代表的功能或操作含义,让用户一眼就能理解,避免使用过于复杂或晦涩难懂的图标。
- 尺寸规范:不同系统和设备对图标的尺寸要求有所不同,例如iOS系统中,App Store 中显示的应用图标尺寸为1024x1024像素,设备主屏幕上的应用图标应为180x180像素;Android系统中,Google Play商店建议上传512x512像素的应用图标,在设备主屏幕上,不同分辨率对应的图标尺寸也不一样.

二、交互设计规范
- 操作流程:
- 流畅性:确保操作流程自然流畅,减少用户的等待时间和操作步骤,避免出现卡顿、延迟或频繁的页面加载等情况,手指及手势操作、用户注意流以及转场都要自然流畅.
- 简单性:设计简单直接的操作方式,让用户能够快速上手和理解,尽量减少用户的学习成本和记忆负担,例如提供明确的操作提示和引导.
- 可逆性:允许用户撤销或回退操作,提供明确的返回上一级或取消操作的按钮或手势,以增强用户的操作安全感和可控性.
- 手势操作 :
- 自然性:优先设计自然、符合用户习惯的手势交互,如点击、滑动、缩放、长按等,让用户能够凭借直觉进行操作。
- 可触区域:手势操作的可触区域必须大于7×7mm,尽量大于9×9mm,以确保用户能够准确地触发操作,避免误操作。
- 反馈提示:为手势操作提供明确的过程及反馈演示,让用户知道操作是否成功以及操作的结果,例如在用户滑动页面时,显示页面的滑动效果和过渡动画。
- 反馈机制 :
- 及时性:用户操作后应立即给出反馈,让用户知道操作已经被接收和处理,如按钮点击后变色、页面加载时显示进度条等。
- 明确性:反馈信息应明确、清晰,能够准确传达操作的结果或状态,避免使用模糊或容易引起误解的反馈提示。
- 多样性:采用多种反馈方式,如视觉反馈、听觉反馈、触觉反馈等,以增强反馈的效果和用户体验,例如在用户输入错误时,除了显示错误提示文字外,还可以伴有震动或声音提示。

三、文字设计规范
- 字体选择:选择易读性高的字体,如系统默认字体或常见的无衬线字体,避免使用过于花哨或难以辨认的字体,确保文字在不同屏幕尺寸和分辨率下都能清晰显示.
- 字号设置:字号范围一般在20-36之间,具体要根据产品属性和内容重要性来设置,上下级内容字号的极差关系为2-4,且所有字号设置必须为偶数,以保持视觉的一致性和协调性.
- 颜色搭配:文字颜色应与背景颜色形成鲜明对比,确保文字的可读性,同时也要注意文字颜色与整体界面风格的协调性,避免使用过于刺眼或难以区分的颜色组合.
四、性能优化规范
- 内存管理 :
- 避免内存泄漏:及时释放不再使用的资源,如关闭未使用的页面、清除缓存数据等,以防止内存占用不断增加,导致应用程序出现卡顿或崩溃。
- 优化数据结构:使用高效的数据结构来存储和处理数据,减少内存占用,提高数据的读写速度和处理效率。
- 流畅度优化 :
- 减少界面渲染时间:优化布局和动画效果,避免过于复杂的界面设计和动画过渡,以减少界面渲染的时间和资源消耗。
- 异步处理:采用多线程技术,将一些耗时的操作放在后台线程中进行处理,避免界面卡顿,如图片加载、数据下载等。

五、安全规范
- 数据加密 :
- 传输加密:使用https协议对数据传输进行加密,确保数据在网络传输过程中的安全性,防止数据被窃取或篡改。
- 存储加密:对敏感数据进行加密存储,如用户的登录密码、个人信息等,以保护用户数据的隐私和安全。
- 权限管理 :
- 最小权限原则:只申请必要的权限,避免过度申请权限,减少安全风险,在用户使用到相关功能时再动态请求权限,提升用户体验。
- 权限说明:向用户明确说明申请权限的目的和用途,让用户能够清楚地知道应用程序需要哪些权限以及为什么需要这些权限,增强用户的信任度。

相关文章:
移动 APP 设计规范参考
一、界面设计规范 布局原则: 内容优先:以内容为核心进行布局,突出用户需要的信息,简化页面导航,提升屏幕空间利用率.一致性:保持界面元素风格一致,包括颜色、字体、图标等,使用户在…...
HarmonyOS:@Require装饰器:校验构造传参
一、前言 Require是校验Prop、State、Provide、BuilderParam和普通变量(无状态装饰器修饰的变量)是否需要构造传参的一个装饰器。 说明 从API version 11开始对Prop/BuilderParam进行校验。 从API version 11开始,该装饰器支持在元服务中使用。 从API version 12开…...
github提交不上去,网络超时问题解决
问题出现的原因: DNS服务器数据不同步,github的服务器发送迁移,在本地缓存的ip地址现在无效了。 解决方案: 1)点击这里,查询github.com最新的ip地址 2.0)编辑linux系统地址缓存文件&#x…...
国产数据库OceanBase从入门到放弃教程
1. 介绍 是由蚂蚁集团(Ant Group,原蚂蚁金服)自主研发的分布式关系型数据库。它旨在解决海量数据存储和高并发访问的问题,特别适合金融级应用场景,如支付宝等对数据一致性、可靠性和性能有极高要求的服务。以下是关于…...
风力涡轮机缺陷检测数据集,91.4%准确识别率,18912张图片,支持yolo,PASICAL VOC XML,COCO JSON格式的标注
风力涡轮机缺陷检测数据集,91.4%准确识别率,18912张图片,支持yolo,PASICAL VOC XML,COCO JSON格式的标注 数据集下载: yolo v&#…...
Rabbitmq追问2
分析rabbitmq 默认使用姿势是什么 direct fanout还是什么 public void convertAndSend(String exchange, String routingKey, Object object, CorrelationData correlationData) throws AmqpException { this.send(exchange, routingKey, this.convertMessageIfNecessary(obje…...
郑州时空-TMS运输管理系统 GetDataBase 信息泄露漏洞复现
0x01 产品简介 郑州时空-TMS运输管理系统是一款专为物流运输企业设计的综合性管理软件,旨在提高运输效率、降低运输成本,并实现供应链的协同运作。系统基于现代计算机技术和物流管理方法,结合了郑州时空公司的专业经验和技术优势,为物流运输企业提供了一套高效、智能的运输…...
如何使用React,透传各类组件能力/属性?
在23年的时候,我主要使用的框架还是Vue,当时写了一篇“如何二次封装一个Vue3组件库?”的文章,里面涉及了一些如何使用Vue透传组件能力的方法。在我24年接触React之后,我发现这种扩展组件能力的方式有一个专门的术语&am…...
汇编点灯练习
要求: 1、轮流将LED1、LED2、LED3及蜂鸣器点亮 2、基于STM32MP157AAA,阅读原理图和STM32MP157芯片手册 3、ARM汇编指令点灯 1、运行效果 汇编点灯 2、通过查询原理图和芯片手册,得到以下结论: 3、汇编源码 .text .global _start…...
数据结构与算法之动态规划: LeetCode 213. 打家劫舍 II (Ts版)
打家劫舍 II https://leetcode.cn/problems/house-robber-ii/description/ 描述 你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的同时&#…...
Git工具
安装教程 详细安装教程 基本命令...
SpringBoot3.3.3+shardingsphere-jdbc5.5.0读写分离、自定义生成主键策略
最近在开发项目搭建框架时,考虑后期支付模块的订单数据量可能会比较大,于是使用现在主流的shardingsphere的读写分离、水平分表来解决后期数据量大影响查询效率的问题。 项目技术栈:jdk17Springboot3.3.3shardingsphere-jdbc5.5.0mybatis-pl…...
开发运维基本功:无需复杂配置快速实现本地Nginx的公网远程访问
文章目录 前言1. 本地连接测试2. 飞牛云安装Cpolar3. 配置公网连接地址4. 飞牛云APP连接测试5. 固定APP远程地址6. 固定APP地址测试 前言 现在生活和工作中的各种设备都变得越来越智能,而数据存储的需求也随之剧增。想象一下:你正在外地出差,…...
金融租赁系统助力企业转型与市场竞争力提升
内容概要 在现代商业环境中,金融租赁系统不仅是一个简单的工具,而是企业转型的重要推动力。通过优化业务流程,提升自动化水平,它帮助企业在复杂的市场中找到自己的立足之地。想象一下,一个企业在使用传统方法时&#…...
【漫话机器学习系列】028.CP
Mallows’ Cp:标准化公式解析与应用 Mallows’ Cp 是一种常用的模型选择工具,用于在一系列候选模型中权衡拟合度和复杂性,帮助我们选择性能最优的模型。本文将基于其标准化公式展开详细解析,并探讨其应用场景、实现方法、优点与局…...
软件测试——面试八股文(入门篇)
今天给大家分享软件测试面试题入门篇,看看大家能答对几题 一、 请你说一说测试用例的边界 参考回答: 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下ÿ…...
如何在不同工作场景下优化嵌入式系统的电源消耗
在不同工作场景下优化嵌入式系统的电源消耗是一个复杂但至关重要的任务,它涉及到硬件设计、软件编程以及系统级管理等多个方面。以下是一些具体的策略和方法: 1. 动态电压频率调节(DVFS) 原理:根据处理器的当前负载动…...
java - SpringBoot3.x接入Security6.x实现JWT认证
java - SpringBoot3.x接入Security6.x实现JWT认证 文章目录 java - SpringBoot3.x接入Security6.x实现JWT认证一、引言二、环境三、Maven依赖四、认识JWT1. JWT组成 五、认识Security6.x1. 和旧版本的区别(Security5.7以前的版本)2. Security6.x的默认筛…...
【每日学点鸿蒙知识】无障碍、getLastLocation、蓝牙问题、卡片大小、关系型数据库等
1、是否有类似无障碍辅助相关的API? 场景描述:锁机app,需要通过无障碍能力辅助检测当前正在打开的app,以及模拟用户操作, 关闭用户想要屏蔽的app 可参考:https://developer.huawei.com/consumer/cn/doc/h…...
[Linux] 服务器CPU信息
(1)查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c输出:可以看到有128个虚拟CPU核心,型号是后面一串 128 Intel(R) Xeon(R) Platinum 8336C CPU 2.30GHz(2&…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
