0
点赞
收藏
分享

微信扫一扫

iOS开发_适配深色模式

霸姨 2022-05-13 阅读 176

1、颜色

1.1 系统自动处理

self.backgroundColor = [UIColor systemRedColor];

1.2 自定义颜色

UIColor *color = [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull traitCollection) {
if (traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {
// 深色模式下的颜色
return [UIColor blueColor];
}
else {
// 浅色模式下的颜色
return [UIColor purpleColor];
}
}];

self.backgroundColor = color;

3、模式变化监听

  • 在UIViewController、UIView上重写以下方法进行监听。
// 重写该方法监听模式的改变
- (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection {
[super traitCollectionDidChange:previousTraitCollection];

NSLog(@"traitCollectionDidChange");
// 创建动态 color
UIColor *color = [UIColor colorWithDynamicProvider:^UIColor * _Nonnull(UITraitCollection * _Nonnull traitCollection) {
if (traitCollection.userInterfaceStyle == UIUserInterfaceStyleDark) {
return [UIColor darkGrayColor];
}
else {
return [UIColor redColor];
}

}];
self.backgroundColor = color;
}



作者:​​ CH520​​




举报

相关推荐

0 条评论