android9有深色模式吗,深色模式还是黑色模式?微信把所有人都搞懵了

原标题:深色模式还是黑色模式?微信把所有人都搞懵了

前一阵子,微信正式加入了对“深色模式”的支持,这也是除了Windows Phone 版本以外微信第一次从系统层面支持深色模式。虽然这次更新离WWDC上的演示已经过去了9个月,但这也重新将“深色模式”这四个词推到了风头浪尖。

除了对“深色模式”的迫切需求外,网上也有不少关于微信深色模式的讨论,比如有人“因深色模式不是纯黑背景”而打出差评,但也有人持反对意见并批评纯黑背景。所以今天趁着这个机会,我们顺便聊聊深色模式究竟该怎么做?

微信也是迫不得已

先来说说微信Android版的深色模式问题,早在Android 4.0的时代,谷歌所提出的Holo设计方案就有暗色和亮色两套设计配色方案。但受当时设计风格影响,无论是第一方谷歌还是其他第三方软件,都没有可以去适配暗色的Holo设计,都是一套亮色走天下。

受开发环境影响,谷歌与Android相关的开发者指引在国内并没有太大的影响力,不少手机品牌都将原生Android的控件样式(比如开关的颜色)替换成自己手机品牌的风格。软件如果严格按照谷歌的开发者指引进行开发,呈现的效果将不伦不类。

5f6cac046bb3bb9fc214bd1272df116e.png

而诞生于这混乱时代的微信,只好选择自己亲手“造轮子”的办法,不使用任何谷歌范例中的样式,而是从头开始自己写一套属于自己的应用样式,从而让不同品牌的手机也有同样的微信体验。

虽然说微信这种“自力更生”的做法令人倾佩,但现在的Android早已不是当年的Android,随着国内品牌海外市场的拓展,国内品牌手机系统的设计风格也逐渐向谷歌设想中的Android靠拢。在Android P已经正式加入深色模式的情况下,坚持不遵照应用设计指引,不提供正式版深色模式就显得有些“特立独行”了。

e9df161348e638a457fcee24261cb977.png

但这也不能完全怪到微信头上,作为一个“国民级”级的应用,微信有着大多数手机软件都难以比拟的用户基数,对于一个用户破10亿的软件,即使是0.01%的负面评价,也是意味着10万种不同的看法。在这种情况下,微信的每一步,自然都走地小心翼翼。尤其是不同用户对深色模式都有不同的期待,微信更是要小心谨慎。

举个例子,现在微信Android版的UI设计与iOS版相似,虽然一直有人希望微信能遵循Android应用设计规范,采用谷歌主导的material design,但微信一直不为所动。不过在七年前,微信曾短暂地推出过一版采用了符合当时Android设计规范的“谷歌风格”微信。

因为这一版本为突然释出,未经任何预告与公测,这一“谷歌版”微信迅速收到海量用户的差评。不久后微信Android版的设计风格就再次回归iOS版本,并一直持续到现在。对于这种用户极有可能引发争议的界面改动,微信也变得相当谨慎。

深色模式不是黑色模式

可能有人会想“深色模式不就是把白色变黑吗,这有什么难的?”其实不然,深色模式里的设计门道其实比亮色模式都要讲究。细心的你们一定发现了我刚才提到的的都是“深色模式”而不是“黑暗模式”或“黑色模式”,这就是Dark Mode的第一个设计要点,也是目前关于深色微信争议最大的一点,深色模式不等于黑色模式。

9a0219686496669dfff31a7892981a2e.png

因为手边没下载iOS的设计文档,这里先用谷歌所提倡的设计指引为例。谷歌表示,深色模式可以带来的优势有:

可大幅减少耗电量(具体取决于设备的屏幕技术)。

为弱视以及对强光敏感的用户提高可视性。

让所有人都可以在光线较暗的环境中更轻松地使用设备。

可以看出,省电虽然是深色模式的特性之一,但并非深色模式唯一的特点。对于OLED面板而言,纯黑色背景可以起到省电的作用,但使用纯黑背景也会让文字的对比度变高,更容易引起眼部疲劳。

因此在设计指引中,谷歌推荐使用深灰色(#121212)作为应用背景,而不是更加省电的纯黑色。谷歌长期的颜色研究显示:深灰色表面可以展现更广泛的颜色,高度和深度范围,因为更容易看到灰色阴影。深灰色的表面还可以减少眼睛疲劳,因为深灰色表面上的浅色文本的对比度低于黑色表面上的浅色文本。

3cb3ee0e57ebd8f6668a8f79afa40020.png

微信iOS版本使用深灰而不是纯黑背景也是出于这方面的考虑:对于微信这种需要阅读文字的应用来说,深灰色的背景可以降低眼部疲劳的程度。除了微信外,iOS自带的备忘录在深色模式下也没有采用纯黑,而是使用深灰的纹理材质作为背景。

除了这些现代应用,深色背景比全黑背景更适合夜间使用这一道理其实在智能手机早期就已经有所体现。比如Kindle阅读软件虽然有提供纯黑的背景,但其夜间模式依然采用了深灰色的背景,文字也不是纯白,而是看起来更舒服的浅灰色。或者举个更早的例子,非触屏时代的UC浏览器,它的夜间模式用的不也是深蓝色背景吗?

虽然我认为微信的深色模式仍有不少改善空间,但相信大家对深色模式加入还是持积极态度的。虽然来晚了9个月,但对于随时随地都要玩手机的我们来说,深色模式确实非常实用。不管iOS还是安卓平台,都希望未来有更多的适配深色模式的应用出现。

(在看:深色黑色傻傻分不清)返回搜狐,查看更多

责任编辑:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/542343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站后端_Python+Flask.0007.FLASK构造跳转之301跳转与302重定向?

构造地址:说明: FLASK支持通过视图函数及传参来构造URL,而且未来修改URL可一次性修改,且默认构建会转义特殊字符和Unicode数据,这些工作不需要我们自己处理,且不仅支持在上下文中构造而且还支持在模版文件中构造#!/usr/bin/env python # -*- coding: utf-8 -*- ""&qu…

python插值程序_计算方法(2)——插值法(附Python程序)

给定一些数据,生成函数的方式有两种:插值,回归。插值而得到的函数通过数据点,回归得到的函数不一定通过数据点。下面给出拉格朗日插值,牛顿插值和Hermite插值的程序,具体原理可参考课本,不再赘述…

java中cbrt_Java Math类静态double cbrt(double d)示例

java中cbrt数学类静态double cbrt(double d) (Math Class static double cbrt(double d)) This method is available in java.lang package. 此方法在java.lang包中可用。 This method is used to find the cube root of the given parameter in the method. 此方法用于查找方法…

html中电子邮件怎么写,谈html mailto(电子邮件)实际应用

大家知道,mailto是网页设计制作中的一个非常实用的html标签,许多拥有个人网页的朋友都喜欢在网站的醒目位置处写上自己的电子邮件地址,这样网页浏览者一旦用鼠标单击一下由mailto组成的超级连接后,就能自动打开当前计算机系统中默…

python爬虫urllib 数据处理_Python 爬虫笔记之Urllib的用法

urllib总共有四个子模块,分别为request,error,parse,robotparserrequest用于发送request(请求)和取得response(回应)error包含request的异常,通常用于捕获异常parse用于解析和处理urlrobotparser用于robot.txt文件的处理urllib.request 模块import urllib.requestresponseurlli…

语法分析-C语言程序

⑴<C语言程序>——〉begin<语句串>end ⑵<语句串>——〉<语句>{&#xff1b;<语句>} ⑶<语句>——〉<赋值语句> ⑷<赋值语句>——〉ID&#xff1a;<表达式> ⑸<表达式>——〉<项>{<项> | -<项>…

python中对比数组长度_在Python中检索数组长度的首选方法

python中对比数组长度The __len__() is a method on container types. However, python also provides another option of retrieving the length of an array, using the method len(). __len __()是关于容器类型的方法。 但是&#xff0c;python还使用len()方法提供了另一个检…

html window 属性,html中window对象top 、self 、parent 等属性

top 属性返回最顶层的先辈窗口。该属性返回对一个顶级窗口的只读引用。如果窗口本身就是一个顶级窗口&#xff0c;top 属性存放对窗口自身的引用。如果窗口是一个框架&#xff0c;那么 top 属性引用包含框架的顶层窗口。下面的例子窗口是否在一个框架中&#xff0c;如果是&…

python随机抽签列表中的同学值日_神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号...

神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号更多相关问题下图表示几个植物类群的进化关系。下列叙述不正确的是[ ]A&#xff0e;最先出现的植物类群是甲B&#xff0e;乙和丙都是由甲进化来的请结合下图中的有关动物回答问题。(1)___的发育为不完全变态…

LightGBM中GBDT的实现

现在LightGBM开源了&#xff0c;这里将之前的一个文档发布出来供大家参考&#xff0c;帮助更快理解LightGBM的实现&#xff0c;整体思路应该是类似的。 LightGBM优雅&#xff0c;快速&#xff0c;效果好&#xff0c;希望LightGBM越来越好:) LightGBM中GBDT的实现 http://www.do…

python逗号分隔符_在Python中用逗号将数字打印为数千个分隔符

python逗号分隔符什么是质数&#xff1f; (What is a prime number?) Many times, while writing the code we need to print the large number separated i.e. thousands separators with commas. 很多时候&#xff0c;在编写代码时&#xff0c;我们需要打印大量的分隔符&…

html页面foot,HTML tfoot用法及代码示例

HTML中的标记用于提供页脚内容组。此标记在带有标题和正文的HTML表中使用&#xff0c;称为“thead”和“tbody”。 标记是表的子标记&#xff0c;是和的父标记。用法: // Table footer contents... 属性&#xff1a;标记包含HTML4.1支持但HTML5不支持的许多属性。align:设置文本…

Tensorflow学习笔记4:分布式Tensorflow

简介 Tensorflow API提供了Cluster、Server以及Supervisor来支持模型的分布式训练。 关于Tensorflow的分布式训练介绍可以参考Distributed Tensorflow。简单的概括说明如下&#xff1a; Tensorflow分布式Cluster由多个Task组成&#xff0c;每个Task对应一个tf.train.Server实例…

c语言指针访问 静态变量_使用C中的指针访问变量的值

c语言指针访问 静态变量As we know that a pointer is a special type of variable that is used to store the memory address of another variable. A normal variable contains the value of any type like int, char, float etc, while a pointer variable contains the me…

迭代器 java_Java设计模式8:迭代器模式

迭代器模式迭代器模式又叫做游标(Cursor)模式&#xff0c;其作用是提供一种方法访问一个容器元素中的各个对象&#xff0c;而又不暴露该对象的内部细节。迭代器模式结构迭代器模式由以下角色组成&#xff1a;1、迭代器角色负责定义访问和遍历元素的接口2、具体迭代器角色实现迭…

html二级下拉菜单模板,基于jQuery实现二级下拉菜单效果

本文通过代码实例详细介绍一下简单的二级下拉菜单是如何实现的&#xff0c;当然还有更为复杂的二级菜单&#xff0c;不过先学会如何制作简单的&#xff0c;分享给大家供大家参考&#xff0c;具体内容如下代码如下&#xff1a;下拉菜单nav a{text-decoration:none;}nav>ul>…

给定一个整数判断是否为素数_Ruby程序检查给定数字是否为素数

给定一个整数判断是否为素数检查素数 (Checking prime number) Before getting into writing the code, let us understand what exactly the prime numbers are? So that we could easily design its logic and implement it in the code. Prime numbers are those numbers w…

python 正则findall右斜杠_python中正则表达式的使用

本文将介绍几个最常用的正则符号&#xff0c;以及正则表达式的应用场景。如果说【数学表达式】刻画的是数字的内在规律&#xff0c;那么【正则表达式】则是用来刻画和描述字符串内在规律的表达式。记得刚接触python时学习过slice&#xff0c;replace&#xff0c;split等方法&am…

JavaScript | 用户定义函数的一些示例

1) Design a function, print message and assign the function to a variable and print it like a function 1)设计一个功能&#xff0c;打印消息并将该功能分配给变量&#xff0c;然后像打印功能一样打印 <html lang"en"><head><script>functi…

网易 html5,别再想不开做H5了

写这篇文章的时候网易哒哒《饲养手册》H5刷屏了&#xff0c;但我们依旧不建议品牌做H5。H5作为大众传播工具的时代&#xff0c;已经过去了。尽管去年有很多H5曾经刷屏过&#xff0c;但在当时我们就一直跟朋友说&#xff0c;不要再尝试H5了&#xff0c;性价比根本算不过来&#…