iOS开发中适配iOS13新增的暗黑模式

广州/UI设计师/5年前/238浏览
iOS开发中适配iOS13新增的暗黑模式

iOS开发中适配iOS13新增的暗黑模式

iOS开发中适配iOS13新增的暗黑模式

禁用App的暗黑模式

由于我们没有对iOS13新增的暗黑模式进行适配,我们可以禁用App的暗黑模式。
在info.plist文件中增加User Interface Style并设置为Light。


禁用App某些页面的暗黑模式

如果我们对App某些页面适配了暗黑模式,有些页面还没来得及适配,我们可以对某些页面禁用暗黑模式。

  self.view.overrideUserInterfaceStyle = UIUserInterfaceStyleLight;

适配颜色

iOS13设置颜色增加了方法

/* Create a dynamic color with a provider.
 * When methods are called on this color that need color component values,
 * the provider is called with UITraitCollection.currentTraitCollection.
 * The provider should use that trait collection to decide a more fundamental UIColor to return.
 * As much as possible, use the given trait collection to make that decision, not other state.
 */
 + (UIColor *)colorWithDynamicProvider:
 (UIColor * (^)(UITraitCollection     *traitCollection))dynamicProvider 
 API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);
 
 - (UIColor *)initWithDynamicProvider:
 (UIColor * (^)(UITraitCollection *traitCollection))dynamicProvider 
 API_AVAILABLE(ios(13.0), tvos(13.0)) API_UNAVAILABLE(watchos);

我们可以通过 拓展 @interface UIColor (TBColorExtend) 在拓展类里判断当前的模式,然后设置不同模式下的颜色。

如下,在#import "UIColor+TBColorExtend.h"

//适配iOS13,暗黑模式
+(UIColor *)generateDynamicColor:(UIColor *)lightColor darkColor:(UIColor *)darkColor;


#import "UIColor+TBColorExtend.m"

@implementation UIColor (TBColorExtend)

//适配iOS13,暗黑模式
+(UIColor *)generateDynamicColor:(UIColor *)lightColor darkColor:(UIColor *)darkColor{
   
    if (@available(iOS 13.0, *)) {
          UIColor *dyColor = [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull traitCollection) {
              if (traitCollection.userInterfaceStyle == UIUserInterfaceStyleLight) {
                  return lightColor;
              }else {
                  return darkColor;
              }
          }];
          return dyColor;
      }else{
          return lightColor;
      }
}

如此调用即可全集变换颜色。简单快捷。。。。

2
Report
|
1
Share
相关推荐
世界正在-失去⾊彩吗?
Homepage recommendation
文章内容含视频
UI
UI
UI
UI
作品收藏夹
库⾥ 投中了⽉亮!
Homepage recommendation
文章内容含视频
⽤⼀⽀⼴告 碾压所有友商
Homepage recommendation
文章内容含视频
文案,写的是遗憾
Homepage recommendation
内容含视频
废旧酒瓶 如何重⽣?
Homepage recommendation
文章内容含视频
AI拍摄 户外⼈狂喜
Homepage recommendation
文章内容含视频
评论
in to comment
Add emoji
喜欢TA的作品吗?喜欢就快来夸夸TA吧!
推荐素材
You may like
一楼咖啡
Homepage recommendation
Logo Design
Homepage recommendation
相关收藏夹
UI
UI
UI
UI
作品收藏夹
电影海报精选
电影海报精选
电影海报精选
电影海报精选
精选收藏夹
作品收藏夹
小家电
小家电
小家电
小家电
精选收藏夹
作品收藏夹
茶包装
茶包装
茶包装
茶包装
精选收藏夹
作品收藏夹
:04:火锅类摄影
:04:火锅类摄影
:04:火锅类摄影
:04:火锅类摄影
精选收藏夹
作品收藏夹
IP形象设计
IP形象设计
IP形象设计
IP形象设计
精选收藏夹
作品收藏夹
大家都在看
Log in