ThemeManager
public class ThemeManager : @unchecked Sendable
主题管理器,iOS13+可跟随系统改变
框架默认只拦截了UIView|UIViewController|UIScreen|UIImageView|UILabel类,满足条件会自动触发themeChanged;如果不满足条件或者拦截未生效,需先设置主题上下文fw.themeContext才能生效。 注意事项:iOS13以下默认不支持主题切换;如需支持,请使用fw.color相关方法
-
单例模式
Declaration
Swift
public static let shared: ThemeManager
-
当前主题模式,默认跟随系统模式
Declaration
Swift
public var mode: ThemeMode { get set }
-
iOS13切换主题模式时是否覆盖主window样式(立即生效),默认false。如果固定主题模式时颜色不正常,可尝试开启本属性
Declaration
Swift
public var overrideWindow: Bool { get set }
-
初始化方法
Declaration
Swift
public init()
-
当前全局主题样式
Declaration
Swift
public var style: ThemeStyle { get }
-
指定traitCollection的实际显示样式,传nil时为全局样式
Declaration
Swift
public func style(for traitCollection: UITraitCollection?) -> ThemeStyle