用户登录
用户注册

分享至

iOS Dark Mode快速适配

  • 作者: 用户116329088
  • 来源: 51数据库
  • 2021-07-08

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

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产品掰扯掰扯

希望可以带来帮助

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

?

软件
前端设计
程序设计
Java相关