0

我的应用程序有一个深色主题选项,在这种情况下,我会执行以下操作:

    UILabel.appearance().textColor = .white

问题是,该应用程序提供了通过 UIDocumentInteractionController 导出一些文本的能力。当我这样做时presentPreview,它会在白色背景上显示白色文本,这会使文本完全不可见。似乎没有任何方法可以更改 UIDocumentInteractionController 的文本颜色或背景颜色。

我试过这个

UILabel.appearance(whenContainedInInstancesOf: [UIDocumentInteractionController.self]).textColor = .black

但这只是给Cannot convert value of type 'UIDocumentInteractionController.Type' to expected element type 'UIAppearanceContainer.Type'

在创建 UIDocumentInteractionController 之前,我也尝试过设置 UILabel.appearance().textColor = .black,但这也无济于事 - 文本仍然显示为白色。

更烦人的是,这可以改变导航栏标题颜色:

let navBarTitleTextAttributes = [
      NSAttributedString.Key.foregroundColor: UIColor.black,
]
UINavigationBar.appearance().titleTextAttributes = navBarTitleTextAttributes
self.dic = UIDocumentInteractionController()
...

但是标签外观没有响应。

4

0 回答 0