运行时更改UITabBar

时间:2014-12-02 18:00:33

标签: ios objective-c iphone uitabbarcontroller uitabbar

我正在为我的应用制作一个主题,当我切换主题时,UITabBar不想应用颜色。

该栏仅在启动时采用活动主题中定义的颜色。 我打电话给这个,但它不起作用:/

    [[UITabBar appearance] setBarStyle:[theme tabBarStyle]];

1 个答案:

答案 0 :(得分:3)

外观代理对现有视图没有影响 - 仅限于将来的视图。这就是为什么它通常只在启动时被调用,然后才会有任何接口。

您可以随时设置外观代理,但如果您希望现有视图更改其外观,则必须以正常方式执行此操作,即通过直接向这些现有视图发送消息。您可以按照这样的方式组织代码。

或者,当然,您可以设置外观代理,销毁整个现有界面,然后在新代理设置的影响下重建您的界面。