ios13 深色模式的颜色及图片适配
2020-04-21 本文已影响0人
不泯iOS
颜色的适配
通过给UIColor写一个分类UIColor+ChangeColor.h,然后直接调用:
.h文件
/// 根据系统的外观来决定限时什么颜色
/// @param lightHexStr 浅色模式下的颜色
/// @param darkHexStr 深色模式下的颜色
+ (UIColor *)lightStyleColor:(NSString *)lightHexStr darkStyleColor:(NSString *)darkHexStr;
.m文件
+ (UIColor *)lightStyleColor:(NSString *)lightHexStr darkStyleColor:(NSString *)darkHexStr{
if (@available(iOS 13.0, *)){
return [[UIColor alloc]initWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull traitCollection) {
if (traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {
return [UIColor colorWithHexString:darkHexStr alpha:1.0];
}else{
return [UIColor colorWithHexString:lightHexStr alpha:1.0];
}
}];
}else{
return [UIColor colorWithHexString:lightHexStr alpha:1.0];
}
}
调用:
label.textColor = [UIColor lightStyleColor:@"#000000" darkStyleColor:@"#ffffff"];
图片的适配
图片的适配即准备两套图片,然后导入Assets.xcassets文件中,具体操作为: