在View Controller中设置基于协议的主题

时间:2019-05-31 10:29:18

标签: ios swift

我设法使基于协议的主题工作基于此:https://basememara.com/protocol-oriented-themes-for-ios-apps/

但是,在AppDelegate中设置theme.apply(for: application)时,在视图控制器中使用与theme.apply(for: UIApplication)相同的方法会引发错误:无法将类型'UIApplication.Type'的值转换为预期的参数类型'UIApplication'

这是怎么了?

1 个答案:

答案 0 :(得分:0)

theme.apply(for: application)中,您将UIApplication的实例作为参数传递。 在theme.apply(for: UIApplication)中,您将UIApplication作为类型传递,这会导致错误,因为函数希望传递UIApplication实例。 尝试改为传递UIApplication.shared。像这样:

theme.apply(for: UIApplication.shared)

应该有帮助。