美文网首页
iOS暗黑模式的适配处理。

iOS暗黑模式的适配处理。

作者: 子小每文 | 来源:发表于2020-06-19 10:49 被阅读0次

//#import <AppKit/AppKit.h>

import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface UIColor (KGCDarkColorTreatment)

  • (UIColor *)colorWithDarkColorStr:(NSString *)DarkColor LightColor:(NSString *)LightColor;

/// 自定义色值
/// @param DarkColor 深色模式下对应的色值
/// @param LightColor 浅色模式下对应的色值

  • (UIColor *)colorWithDarkColor:(UIColor *)DarkColor LightColor:(UIColor *)LightColor;

/黑白配置/
/背景黑白/

  • (UIColor )traitCollectionBackgroundColorDidChange;
    /
    字体黑白*/
  • (UIColor *)traitCollectionFontColorDidChange;

随手记录,之后会进行不合理的优化,

import "UIColor+KGCDarkColorTreatment.h"

@implementation UIColor (KGCDarkColorTreatment)

/字符串形式的/

  • (UIColor *)colorWithDarkColorStr:(NSString *)DarkColor LightColor:(NSString *)LightColor
    {
    if (@available(iOS 13.0, *)) {
    UIColor *dyColor = [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull trainCollection) {
    if ([trainCollection userInterfaceStyle] == UIUserInterfaceStyleDark) {

// NSLog(@"默认颜色,白色");
return [UIColor colorWithHexString:DarkColor];

           }else {

// NSLog(@"默认颜色,黑色");
return [UIColor colorWithHexString:LightColor];
}
}];
return dyColor;
} else {
return [UIColor colorWithHexString:LightColor];
}
}

/背景颜色适配暗黑/
/黑白调用就行, 动态设置,背景和字体颜色之类的/

  • (UIColor *)traitCollectionBackgroundColorDidChange{

    if (@available(iOS 13.0, *)) {
    return [UIColor systemBackgroundColor];
    }else{
    return [UIColor whiteColor];
    }
    }

/暗黑字体颜色适配/
/黑白配置/
/针对渐变不同变色反向设置/

  • (UIColor *)traitCollectionFontColorDidChange{

    if (@available(iOS 13.0, *)) {
    UIColor *dyColor = [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull trainCollection) {
    if ([trainCollection userInterfaceStyle] == UIUserInterfaceStyleLight) {
    // NSLog(@"555555");
    return [UIColor blackColor];
    }else {
    // NSLog(@"333333");
    return [UIColor whiteColor];
    }
    }];

      return dyColor;
    

    } else {
    return [UIColor blackColor];
    }
    }

pragma mark === /自定义色值/

  • (UIColor *)colorWithDarkColor:(UIColor *)DarkColor LightColor:(UIColor *)LightColor
    {
    if (@available(iOS 13.0, *))
    {
    return [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull trait) {
    return trait.userInterfaceStyle == UIUserInterfaceStyleDark ? DarkColor : LightColor;
    }];
    }
    return LightColor;
    }

相关文章

  • 暗黑模式开发

    iOS13暗黑模式适配(项目开发版) iOS 13 DarkMode 暗黑模式 IOS 暗黑模式适配---基础适配

  • iOS 暗黑模式适配(项目实战篇)

    通过上面两篇文章iOS 暗黑模式适配(方法介绍篇)iOS 暗黑模式适配(叨叨篇)我们知道了暗黑模式怎么去适配,那么...

  • iOS 暗黑模式适配

    DarkModeAdapter 简介 iOS 暗黑模式适配懒人版 普通模式(light)下: 暗黑模式(dark)...

  • 百度APP iOS暗黑模式适配的完美解决方案

    百度APP iOS暗黑模式适配的完美解决方案百度APP iOS暗黑模式适配的完美解决方案

  • iOS:暗黑模式适配

    简介:iOS13苹果推出的暗黑模式,在去年苹果已经声明必须适配暗黑模式否则会下架。网上有很多好的文章来适配暗黑模式...

  • 自己适配iOS13解决的问题总结

    自己适配iOS13解决的问题总结 1.暗黑模式Dark Mode iOS 13 推出暗黑模式,UIView默认背景...

  • uni-app做iOS的夜间模式

    iOS13适配暗黑模式/夜间模式/深色模式/暗黑主题(DarkMode)问题:1.监听Android深色或浅色模式...

  • ios13适配不断更新

    1. 暗黑模式 iOS13使用暗黑模式时,UIView默认背景色会变成暗黑色。适配暗黑模式的工作量较大,改为强制使...

  • iOS13 适配总结

    1. 暗黑模式 iOS13使用暗黑模式时,UIView默认背景色会变成暗黑色。适配暗黑模式的工作量较大,改为强制使...

  • iOS暗黑模式的适配处理。

    //#import import NS_ASSUME_NONNULL_BEGIN ...

网友评论

      本文标题:iOS暗黑模式的适配处理。

      本文链接:https://www.haomeiwen.com/subject/wyhvxktx.html