过渡到 UIDocumentInteractionController 接管导航栏标题颜色
Transition to UIDocumentInteractionController takes over navigation bar title color
只需简单地转换 UIDocumentInteractionController 即可显示 PDF。它的标题是黑色的,这是需要的,但我希望它在返回时返回到应用程序颜色(白色)。试图强制更改 viewWillAppear 没有任何作用(尽管我确实看到正在调用 viewWillAppear)。我还尝试更改 documentInteractionControllerDidEndPreview 中的颜色,但同样没有任何反应。颜色保持黑色。
使用以下更改颜色:
let textAttributes = [NSAttributedString.Key.foregroundColor: UIColor.white]
self.navigationController?.navigationBar.largeTitleTextAttributes = textAttributes
为 UIDocumentInteractionController 提供导航控制器:
open func documentInteractionControllerViewControllerForPreview(_ controller: UIDocumentInteractionController) -> UIViewController {
guard let vc = self.navigationController else {
fatalError("No navigation controller")
}
return vc
}
我怎样才能在展示文件时有一个黑色的标题而在我返回时有白色(或任何我想要的颜色)?这应该是一件简单的事情,但我一直在兜圈子。
let navBarAppearance = UINavigationBarAppearance()
navBarAppearance.largeTitleTextAttributes = [.foregroundColor: UIColor.white]
navBarAppearance.backgroundColor = .clear
self.navigationController?.navigationBar.standardAppearance = navBarAppearance
在 viewDidLoad 中调用它解决了问题
只需简单地转换 UIDocumentInteractionController 即可显示 PDF。它的标题是黑色的,这是需要的,但我希望它在返回时返回到应用程序颜色(白色)。试图强制更改 viewWillAppear 没有任何作用(尽管我确实看到正在调用 viewWillAppear)。我还尝试更改 documentInteractionControllerDidEndPreview 中的颜色,但同样没有任何反应。颜色保持黑色。 使用以下更改颜色:
let textAttributes = [NSAttributedString.Key.foregroundColor: UIColor.white]
self.navigationController?.navigationBar.largeTitleTextAttributes = textAttributes
为 UIDocumentInteractionController 提供导航控制器:
open func documentInteractionControllerViewControllerForPreview(_ controller: UIDocumentInteractionController) -> UIViewController {
guard let vc = self.navigationController else {
fatalError("No navigation controller")
}
return vc
}
我怎样才能在展示文件时有一个黑色的标题而在我返回时有白色(或任何我想要的颜色)?这应该是一件简单的事情,但我一直在兜圈子。
let navBarAppearance = UINavigationBarAppearance()
navBarAppearance.largeTitleTextAttributes = [.foregroundColor: UIColor.white]
navBarAppearance.backgroundColor = .clear
self.navigationController?.navigationBar.standardAppearance = navBarAppearance
在 viewDidLoad 中调用它解决了问题