关于我:大厂摸鱼 + 业余独立开发,之后会输出深度技术文章 + 独立开发技巧
我的往期技术文章合集:RickeyBoy - Gitbub
我的独立开发 App:iColors - 设计灵感 配色助手
独立 app 适配深色模式是一个事半功倍的事情,本文我将以我自己的独立 app:「iColors」 为例,详细讲解适配深色模式的各个步骤。
适配深色模式并不困难,按照文章的步骤来绝对没有问题!感兴趣 or 觉得有用的朋友可以点赞收藏。要是觉得非常有用,可以去 App Store 下载一下我的 App,点个五星好评哈哈!
实际效果图示:
浅色模式 | 深色模式 |
---|---|
🤔为什么适配深色模式
深色模式推出以来,基本上所有的 App 都需要考虑深色模式的适配问题了。
在不做适配的情况下,深色模式几乎就是无法正常使用的,会有各种 UI 展示问题,而目前深色模式用户量其实不小,比如 iColors 第一个版本上线是没有适配深色模式的,结果第一天就遇到来自深色模式用户的抱怨哈哈。
因此,为了避免因为没有适配深色模式而直接损失用户,甚至招致差评,所以最好还是适配一下深色模式,哪怕第一版没有那么精细也没有关系。
📱第零步:学会如何调试深色模式
在一切开始之前,先要学会如何测试深色模式,这样才能比较方便地进行调试和适配。
在 Canvas 中调试
最直接的方式就是通过下面这个按钮,选择让 Preview 呈现 Dark Mode:
但是实际上还有一个大招,Canvas 已经为我们提供了适配深色模式更巧妙的办法:
选出来之后可以直接看到对比图,效果如下,是不是非常方便。这也是我目前最常使用的调试方便,充分利用 SwiftUI 的特性,边写边看实际效果。
在模拟器中调试
只需要在模拟器的导航栏中选择 Features,在下拉菜单中选择 Toggle Appearance 即可方便的切换
在真机中调试
在设置中切换就可以了,这个相信大家都很熟悉。只不过真机每次切换的流程及速度没有模拟器和 Preview 中那么快那么方便,因此我一般在适配深色模式时,不会使用真机进行调试。
🎨第一步:颜色适配深色模式
配置颜色
首先我们需要做的是对颜色进行适配。简单来讲比如浅色模式下背景使用白色,深色模式下背景使用黑色;浅色模式下标题使用黑色,深色模式下标题使用白色等。
逻辑很容易理解,那么如何实现呢?方法有不少,我目前觉得最合理的方法是在 Assets 中直接添加 Color Set。具体步骤如下:
- 选中 Assets,点击 "+" 或者右键空白处,可以添加 Color Set
- 系统会默认创建一个颜色,可以修改其名字
- 根据你的需要,修改 Any Appearance & Dark 的颜色,分别代表浅色模式和深色模式会使用的颜色
比如上图这是我所设置的一个叫做 ListBackground 的颜色,主要用于列表背景色。浅色模式时,列表会使用接近于白色的底色,而深色模式时会使用接近黑色的背景。
下期继续讲解颜色的适配,以及图片的适配过程!