iOS 解决深色模式展示异常
新手入门
请多指教
前言
嗯,深色模式在iOS13版本就已经出了,但是呢,我们的app并没有适配(我也不知道为啥,可能是因为懒吧。。。)
最近用户使用的时候出问题了,首先是反馈说App里的字不显示
哎哟,我去。。
赶紧看一下
然后看到反馈的截图发现全是黑的,
不对呀,我们App设计的都是白色底色啊,
然后就突然想到iOS有个深色模式,果然在测试机上开启深色模式后,成功复现了问题。
解决方案
老规矩,先上答案,省的大家看我bb半天发现都是自己想找的信息。
不打算一个个适配,主要是缺少对应的图片适配。
所以直接打算暴力一点,禁用深色模式
或者说,强制app使用Light模式
在配置文件 info 下,新增 Appearance
属性,并设置值为Light
如下图所示
对应info.plist
如下
然后你会惊喜的发现
最终info.plist
文件源码中xml属性
多了UIUserInterfaceStyle
属性 ,并且值为 Light
方便大家拷贝,贴下源码如下
// info.plist
<key>UIUserInterfaceStyle</key>
<string>Light</string>
好了,解决问题的大哥们可以撤了,下面是问题的发现和解决分析过程,基本是写给自己看的,想看的可以接续,不想看的可以直接去尝试代码了。
深色模式 Dark Mode
首先咱们先继续从没显示的原因说起来。
其实不是没显示出来,而是由于字体颜色被反转为白色,恰好背景也是白的,就木了。。。
咱是个iOS开发的二把刀,也不知道咋适配,先在网上查一下了解了解。
基本清一色的说可以通过info.plist
文件添加如下内容解决。<key>UIUserInterfaceStyle</key>
<string>Light</string>
我兴冲冲的就上了啊,先是在项目info里设置,
但是每次输完之后一敲回车都变成了Appearance
属性
我那是还不知道这俩是一样的,寻思着,咋回事,不行啊。
然后去info.plist
试试,当前是列表形式
如下图
敲完后也秒变Appearance
。
然后又看一波博客,发现有人说添加User Interface Style
属性
诶,这个能输入。
最后就掉进了这个坑。
但是其实最终不会有效果。
然后反思下,刚才的变化,既然两次都是这么改变的,是不是二者就是同一个值呢?
这时重新操作了一遍,
这次通过source code
方式打开info.plist
看了一下。
好家伙,就是同一个东西啊。
吃了基础知识不牢的亏啊。
特此记录下过程。
长个记性。
参考文献
iOS13-适配夜间模式/深色外观(Dark Mode)
UIUserInterfaceStyle
UIAppearance
stackoverflow dark-mode-on-ios-13
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgcbfke
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13