移动设备的夜间阅读模式如何进行设计

用户反馈现有界面夜间使用时刺眼,低亮度时界面文字不清晰;用户期望更暗色 、更能保护眼睛的夜间模式设计;关注健康人眼特性——亮度的需求

移动设备的夜间阅读模式如何进行设计

你有没有在夜间使用移动设备的习惯?你觉得QQ现有的夜间模式亮度在使用时是否舒适?为了能够更科学的验证我们的设计,我们通过对比度分析、尼特值测试、色彩亮度和色彩通用性等维度去设计界面,并总结出一套优化方法来分享给大家,相互启发。

我们为什么要做夜间模式?

1. 用户调研显示:57%的用户想要使用夜间模式,71.1%的用户习惯在夜间不开灯看手机

在ISUX北京调研小组的帮助下,我们针对移动端QQ界面夜间模式进行了调研。从2000多份问卷数据中分析发现,用户对夜间模式有明确需求,且多数人在无照明下使用软件。

2. 用户反馈现有界面夜间使用时刺眼,低亮度时界面文字不清晰

调研发现,现有界面用户在夜间使用时感觉刺眼,长时间使用会感觉眼睛疼痛。部分用户认为文字看不清,辨识比较费眼。

3. 用户期望更暗色 、更能保护眼睛的夜间模式设计

从用户对夜间模式的期望来看,他们希望主体界面的颜色更暗,能够更加持久地使用软件。希望我们设计师,能够设计出更加保护眼睛的夜间模式。

我们如何设计夜间模式?

1. 亮度、色彩对比度、通用性色彩是关键,行业趋势倾向低饱和无彩色

(1)关注健康人眼特性——亮度的需求

首先引入尼特值(nit),它是用于量化亮度强度的专业术语,其意思每平方米烛光的强度:1nit=1坎德拉/平方米;

白天,人的眼睛能适应亮度的值高于3.4尼特;

夜晚,主体颜色接近0.034 尼特,最亮元素低于3.4尼特的亮度眼睛会比较舒适。

(2)关注弱视、色盲色弱人群——对比度、色彩通用性的需求

老人或视力弱的人群对于对比度的要求较高,容易看不清文字,应该选择更为合理的对比度。色弱人群和我们看到的颜色存在区别。 所以后续选择色彩度时,应该选择更具通用性色彩设计的方案。

(3)行业趋势——减少极端色,无彩色居多

从行业趋势来看,2016年,google Material Design 和 iOS 相继推出了夜间模式和深色主题设计及护眼模式。从其他权威网站中也发现许多深色界面的设计。最终整理得出,界面主体倾向无色彩,黑色居多。柔和、低饱和度色彩可以增加用户长时间观看界面的舒适度。

2. 五项夜间模式设计原则

通过文献查找结合多次测试对比,我们提出5项评价原则,帮助设计师去判断亮度,对比度,色彩通用性是否满足人眼需求?

原则1:保证色彩通用性,关注特殊人群

所选色彩需要考虑色盲人群的特性,尽量保证他们所看到的颜色和我们接近一致,减少该类人群的识色的 差异性,增强设计的统一性。从软件角度来看,无色彩更能减少正常人和色盲等特殊人群的识色差别。(可利用Sim   Daltonsim for Mac软件检测)。

原则2:选择低亮度、低饱和非极端的色彩(避免纯黑)

对亮度控制,首先需要确定颜色本身的亮度,从一开始对界面的主体颜色的选择就应该选择亮度较低的色彩,从设计用色上就控制界面的亮度。因此,方法就是直接降低色彩本身亮度,但是要避免选用极端颜色(避免纯黑色)。为了方便大家对比所选颜色的亮度,可通过色彩亮度公式计算(Y-范围0-255,Y值约接近0亮度越低):

原则3:保证界面在屏幕中呈现出低尼特值(低亮度)

对于屏幕呈现的亮度的控制,需要通过前面提到的尼特值确定。尼特值能够反馈设计方案在设备上呈现亮度,它直接影响了人眼的亮度舒适程度。所以结合前期人眼视觉特性来看,无光照时,屏幕自动调至最低亮度,主体背景颜色在屏幕上呈现的亮度应该接近0.034尼特,界面中最亮元素应该尽量低于3.4尼特,才能让用户更加持久舒适地使用 (获取尼特值需要通过屏幕亮度仪测试仪测得)。

原则4:保证文字、元素、背景的对比度在能看清的范围内

对比度规范是由web 无障碍指南(WCAG)提出,现已经逐步被大公司采纳,苹果公司的设计规范中引用了此对比度规范。结合夜间模式的需求,我们提出保证文字与背景色对比度在3:1-4.5:1范围,保证元素(头像,必要时为过亮元素添加黑色透明度遮罩

由于界面元素的多样性,例如头像、歌曲、新闻。该类元素如果不能满足亮度和对比度(3:1-7:1)的要求,需要在其上方添加黑色透明遮罩(不透明度40%-50%),从而降低对比度和亮度,使界面元素的亮度尽力满足对比度(3:1-7:1)的要求。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年5月4日 05:27:05
下一篇 2024年5月4日 05:29:09

相关推荐

  • c语言改写模式,c语言实现修改功能

    c语言程序修改? 1、这个程序有4个错误,我都加粗了,第一个是m没有赋初值,第二个是while表达式中的ch=getchar()需要括号括起来,第三个是m=m*10+ch-0中的0也需要用单引号括起来,第四个是第2个while中为m!=0。 2、define容易造成误会,因为不符合一般的编程习惯,false 0, true 1;scanf放在你的那个地方是达…

    2024年5月23日
    4100
  • linux设备发现过程,如何查看linux设备树

    在linux系统里,如何检查新插入的USB设备是否被系统识别? linux系统会自动识别USB接口为串口磁盘sda(通常为sda1,可通过fdisk -l命令查询),挂载就可用。例:新建挂载目录mkdir /mnt/usb,挂载mount /dev/sda1 /mnt/usb,用完卸载挂起点unmount /dev/sda1 /mnt/usb。 首先需要把U…

    2024年5月23日
    4900
  • javaserver模式,javaserverlet

    什么是severlet,及在Java开发中的作用? 1、Servlet是用Java编写的Server端程序,它与协议和平台无关。Servlet运行于Java-enabled Web Server中。Java Servlet可以动态地扩展Server的能力,并采用请求-响应模式提供Web服务。 2、回答二:是severlet!主要是生成动态Web内容和编写的小…

    2024年5月23日
    4200
  • 关联分析序列模式c语言,关联分析序列模式c语言实现

    C语言编写一个序列程序 1、C语言大牛雅荐的七大经典排序算法 冒泡排序 比较相邻的元素。 2、int fibonacci(int n){ int a1 = 1;int a2 = 1;int next = a1 + a2;int i = 3;while(i n){ a1 = a2;a2 = next;next = a1 + a2;} return next;}…

    2024年5月23日
    4400
  • c语言单例模式,c语言设计模式书籍

    C/C++为什么日志模块要设计成单例模式的?有什么好处? 单例模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 优势就是单例模式的作用,这个类永远只有一个实例。还在于可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收。 提供了对唯一实例的受控访问。由于在系统内存中只存在一个对象,因此可以 节约系统资源,当 需要频繁创建和销…

    2024年5月23日
    4100
  • java切换快捷键,我的世界java切换创造模式快捷键

    在Java开发中,Eclipse常用的快捷键有哪些? Ctrl + N:新建一个文件或者一个项目。 Ctrl + Shift + R:快速打开一个资源,包括文件、类、接口、枚举等。 Ctrl + Shift + T:快速打开一个Java类。 eclipse快捷键ctrl+shift+r:打开资源这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的…

    2024年5月22日
    4200
  • linux系统中以什么方式访问设备,linux中,以什么方式访问设备

    linux中什么是块设备和字符设备? | 块设备 块设备是Linux系统中进行TO操作时必须以块为单位进行访问的设备,块设备能够安装文件系统。块设备驱动会利用一块系统内存作为缓冲区,因此对块设备发出读写访问,并不一定立即产生硬件I/O操作。 块设备是一种按块为单位进行数据传输的设备,例如硬盘、U盘等。它们通常以块的形式传输数据,每次读写操作可以读写多个块。块…

    2024年5月22日
    4800
  • java观察者模式视频,js观察者模式应用场景

    设计模式-快餐简解-【观察者模式】 在实际的项目开发中,观察者模式是一个使用频率非常高的模式,通过它的别名:发布——订阅模式也能知道它的主要作用就是用来解耦,将观察者和被观察者解耦,使它们的依赖性更小。 观察者模式在模块之间划定了清晰的界限,提高了应用程序的可维护性和重用性。观察者设计模式定义了对象间的一种一对多的组合关系,以便一个对象的状态发生变化时,所有…

    2024年5月22日
    4800
  • linuxspi从模式驱动的简单介绍

    linux2.4+arm9下spi总线驱动问题 先创建一个spi_board_info结构描述spi设备信息,调用spi_register_board_info将这个结构添加到board_list中。 水平不行,不一定对,仅供参考哈。如果只是从AD里读数据的话,用spi_read就可以了,定义一个8位的缓冲区和一个16位的缓冲区。然后把读到的2个8bit的数…

    2024年5月22日
    4700
  • 享元模式java例子,java建造者模式例子

    java中常用的设计模式有哪些? 常见的Java设计模式有以下10种:桥梁模式(Bridge):将抽象部分与它的实现部分分离,使它们都可以独立地变化。合成模式(Composite):将对象组合成树形结构以表示部分-整体的层次结构。 单例模式(有的书上说叫单态模式其实都一样)该模式主要目的是使内存中保持1个对象 工厂模式 该模式主要功能是统一提供实例对象的引用…

    2024年5月22日
    3900

发表回复

登录后才能评论



关注微信