gpt4 book ai didi

ios - 如何在 iOS 中不使用 UIApperance 更改一个类的外观?

转载 作者:行者123 更新时间:2023-12-01 18:10:55 26 4
gpt4 key购买 nike

我正在使用主题概念来更改我的应用程序中的 UI 外观。我正在使用多个主题。我想更改每个 View Controller 的导航栏的颜色,但 除外注册 View Controller .那么我该怎么做呢?

我试过以下代码

[[UINavigationBar appearance]setTintColor:[UIColor redColor]];
[[UINavigationBar appearanceWhenContainedIn:[RegisterViewController class] ,nil]setTintColor:[UIColor blueColor]];

最佳答案

您有正确的想法,但问题是导航栏不包含在 RegisterViewController 中。它包含在 UINavigationController 中。

换句话说,如果您有一个导航 Controller 和多个 View Controller 子级,并且您希望其中一些子级而不是其他子级的导航栏色调不同,则不能使用外观代理来做到这一点,因为在每种情况下它是同一个导航 Controller 和同一个导航栏。没有区别。

因此,您必须以其他方式进行操作。例如,设置导航 Controller 的委托(delegate)以根据即将出现的 View Controller 更改导航栏的色调。

关于ios - 如何在 iOS 中不使用 UIApperance 更改一个类的外观?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31667592/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com