我正在寻找我的 iOS 应用程序的主题,并且一直在阅读 UIAppearance。我希望用户能够在应用程序内切换多个不同的视觉主题。更改主题将显示在用户界面中。
我想我可以有一个主题文件,它是在 appDelegate.m 中加载的单例。但在那之后我有点困惑如何实现这一点?
将视图添加到视图层次结构后,UIKit 从 UIAppearance 代理设置属性。
In UISS我使用这样的方法:
- (void)reloadAppearance {
NSArray * windows = [UIApplication sharedApplication].windows;
for (UIWindow *window in windows) {
for (UIView *view in window.subviews) {
[view removeFromSuperview];
[window addSubview:view];
}
}
}
另一个技巧是从主窗口中删除 rootViewController 并再次添加它。虽然我更喜欢第一个解决方案,因为它涵盖了更广泛的情况。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)