我正在使用 UIActivityViewController 分享文本, 从列出的选项中选择“消息”时,我的屏幕如下所示,
但是在右栏按钮上有一个取消按钮,它是我的 AppDelegate 中指定的白色。
这里的问题是我无法更新 NavigationBar 颜色。
我试过如下,都没有用,
let activityVC = UIActivityViewController(activityItems: contents, applicationActivities: nil)
present(activityVC, animated: true) {
activityVC.navigationController?.navigationBar.backgroundColor = UIColor.green
activityVC.navigationController?.navigationBar.tintColor = UIColor.red
MYAppDelegate.customise()
}
或
let activityVC = UIActivityViewController(activityItems: contents, applicationActivities: nil)
present(activityVC, animated: true) {
UINavigationBar.appearance().barTintColor = UIColor.red
UINavigationBar.appearance().tintColor = UIColor.white
let navigationTextAttributes = [NSForegroundColorAttributeName : UIColor.white]
UINavigationBar.appearance().titleTextAttributes = navigationTextAttributes
UIBarButtonItem.appearance().setTitleTextAttributes(navigationTextAttributes, for: .normal)
UIBarButtonItem.appearance().tintColor = UIColor.white
}
如何解决这个问题?
最佳答案
您要做的是通过 Apple 开发的 iOS 消息应用程序的 share extension
[1](您在图片中显示的内容)共享一些内容。所以基本上 Apple 可以控制它的颜色。
这是我之前回答的链接:https://stackoverflow.com/a/42517419/5220959我还没有尝试过,但我认为您可以尝试更改您的主机应用程序的 UIAppearance 设置
,看看是否可行。但这样一来,所有导航栏的颜色都将在您的主机应用程序中更改。
关于ios - 从 UIActivityViewController 中选择时显示的 MessageComposer 的 NavigationBar 和 BarButtonItem 颜色更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43051219/