iOS 13.0 暗黑模式的适配

本文详细介绍了iOS应用如何适配暗黑模式,包括颜色、图片的动态适配,以及如何关闭特定界面的暗黑模式。通过使用UIColor的动态提供方法和Asset Catalogs配置不同模式下的资源,实现无缝切换。同时,文章提到了UIViewController和UIView的overrideUserInterfaceStyle属性,用于单个界面不遵循系统暗黑模式。

一、暗黑模式的原理

  • 将原本的资源文件,创建出两种不同的模式。根据不同的模式,自动获取该样式的资源。
  • 每次切换系统模式的时候,系统会重新调用一些方法,重新赋值。

二、暗黑模式适配主要考虑的是:

  • 1、 图片适配

  • 2、颜色适配(文字颜色,背景颜色)

  • 3、状态栏适配

  • 4、关闭暗⿊模式(或者关闭某⼀个页⾯的暗⿊模式)

  • 5、模式切换代理

三、如果不需要适配暗黑模式的话去info里面关闭即可。

在这里插入图片描述

四、iOS13之前 UIColor 只能代表⼀种颜⾊,但是在iOS13之后,系统提供了⼀些 UIColor 的颜⾊是动态的,可以在 Light Mode 和 Dark Mode 下显⽰不同的颜色。在这⾥不多讲,因为真是开发中,⽂字颜⾊或者背景颜⾊都是UI设计好的,不太可能会⽤到系统的。

系统提供的动态颜色有: labelColor、systemBackgroundColor、secondarySystemBackgroundColor、tertiarySystemBackgroundColor、systemGroupedBackgroundColor、secondarySystemGroupedBackgroundColor、tertiarySystemGroupedBackgroundColor等。

五、颜色适配

1、iOS13苹果提供了两个专⽤的⽅法:

+ (UIColor *)colorWithDynamicProvider:(UIColor * (^)(UITraitCollection *traitCollection))dynamicProvider API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
- (UIColor *)initWi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值