当前位置: 代码迷 >> 综合 >> iOS Dark Mode快速适配
  详细解决方案

iOS Dark Mode快速适配

热度:86   发布时间:2023-12-22 17:38:38.0

提起夜间/黑暗模式先说说优点

1.护眼 没有强烈的白光刺激眼睛

2.省电 对于oled屏幕黑色地方是不发光的

本人看来这是最直接的表象 屏幕成像原理啥的咱也不懂

废话不多说

总结一下适配的经验

1.背景色 普遍背景色为白色

2.文字颜色 大部分文字主要显示的颜色是黑色

我们找到这两点,基本你把这两颜色适配完了你的应用在夜间模式下是能看的,说不上完美,但是基本所有内容并无缺失。

适配之前的写法

self.view.backgroundColor = [UIColor whiteColor];

适配之后的写法

UIColor *color  = ({UIColor *coloerN;if (@available(iOS 13.0, *)){coloerN =  [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull trait) {if (trait.userInterfaceStyle == UIUserInterfaceStyleDark){return [UIColor blackColor];} else {return [UIColor whiteColor];}}];}else{coloerN = [UIColor whiteColor];}coloerN;});self.view.backgroundColor = color;

为例避免繁多的代码建议对颜色进行封装

再有不建议在系统颜色上加延展的方式适配夜间模式 这样你会拿不到系统颜色 这就尴尬了

综上所述 改变了背景色,再把黑色文字颜色适配你的夜间模式基本上就能看了

简单粗暴就是查找 批量替换

这也是见效最快的适配方式

其他一些颜色就是慢工出细活 属于逐渐完善的

毕竟你这个颜色还得跟美工UI产品掰扯掰扯

希望可以带来帮助

如果你有更好的适配方式也欢迎评论区

 

  相关解决方案