Ios UIAlertController的外观

Ios UIAlertController的外观,ios,uialertcontroller,uiappearance,Ios,Uialertcontroller,Uiappearance,我想在应用程序中使用外观设计AlertController的外观。 它适用于背景和按钮,但无论我尝试什么,标题和消息的标签始终保持黑色 以下是我正在做的: UIView.appearance(whenContainedInInstancesOf: [UIAlertController.self]).tintColor = .orange UIVisualEffectView.appearance(whenContainedInInstancesOf: [UIAlertController.sel

我想在应用程序中使用外观设计AlertController的外观。 它适用于背景和按钮,但无论我尝试什么,标题和消息的标签始终保持黑色

以下是我正在做的:

UIView.appearance(whenContainedInInstancesOf: [UIAlertController.self]).tintColor = .orange
UIVisualEffectView.appearance(whenContainedInInstancesOf: [UIAlertController.self]).effect = UIBlurEffect(style: .dark)
UILabel.appearance(whenContainedInInstancesOf: [UIAlertController.self]).textColor = .white
这是我得到的结果:


有什么想法吗?我如何设置标题和消息的颜色,或者为什么在这种情况下更改UILabel的外观不起作用?

最简单的方法是:不要

您完全不必感到仅限于使用UIAlertController及其简单的默认视图外观和内容。毕竟,它只是一个显示视图控制器。这意味着您可以编写自己的呈现视图控制器,其外观和行为几乎类似于UIAlertController及其视图,但现在您完全负责其内容


编写自己的警报(如显示的视图控制器)要比尝试侵入UIAlertController的视图好得多、更简单、更可靠;前者是完全合法的,而后者除了不可靠外,还可以禁止你的应用进入应用商店。

我知道,我可以这样做。愚蠢的问题,但是改变视图的外观属性应该是合法的,不是吗?我认为只有使用私有API才是被禁止的,或者你认为即使是上面的更改也可以被认为是苹果禁止该应用的理由吗?我不能代表苹果说话。你做这件事有困难的事实表明你不应该这么做。你在对抗框架,所以框架在反击。有一个简单的方法。门开着的时候,为什么要撞到墙上?