ios 夜间模式

1、真对我们的项目来说 夜间模式是后来项目完工的时候增加的需求,

所以后来直接用这种方式,简单粗暴,直接改window.颜色,其他的设置你们自行增减。

代码如下,

- (void)clickSwitch:(UISwitch *)sender {

if (sender.isOn == YES) {

// 开启

self.superview.window.backgroundColor = [UIColor blackColor]; //设置背景色

self.superview.window.alpha = 0.4; //透明度

}else {

// 关闭

self.superview.window.backgroundColor = [UIColor whiteColor];

self.superview.window.alpha = 1.0;

}

}

2、如果是新的项目,建议做一下统一封装一个主题管理类处理,然后各种控件都做一个基类,在基类里面做主题的处理,改变主题的时候,你可以用delegate、通知任意你想要的形式去发送通知,

3、我看网上有个很火的demo在gitHub上面,九千多star,忘了叫啥名字了,看了一遍没弄懂他们的套路,毕竟是大牛写的,还有利用runtime的,总之有能力的还是可以做的很完美的。

你可能感兴趣的:(ios 夜间模式)