因此,我当前的应用程序在一些地方使用 UIAlertView,并且在更新到 iOS 8 后,我看到文档中的注释曾经说过 UIAlertView(和 UIActionSheet)自 iOS 8 以来已被弃用并被 UIAlertController 取代。我将它添加到我的待办事项列表中,并且刚刚开始着手重构我的代码以使用新的 UIAlertController 类。
我可以看到一切如何与 UIAlertController 一起工作,尽管我留下了一些 UIAlertView 的用例,我似乎不太容易用 UIAlertController 替换它们。这一切都源于这样一个事实,即 [UIAlertView show] 可以调用以显示一个 alertView,而 UIAlertController 必须使用 presentViewController 方法从另一个 viewController 呈现。问题是我有许多调用来创建警报视图,这些调用来自未直接链接到特定 viewController 的代码,我将不得不重构并通过 viewController 参数传递给每个调用点才能使用 UIAlertControllers . 在我这样做之前,我想知道是否有人知道一种很好的方法来恢复在不知道合适的 ViewController 的情况下仅显示 UIAlertController 的能力。
我还实现了一个调试警报视图宏,它可以让我在警报视图中放置错误消息,这些显然可以从任何地方调用,并且与提供 alertViews 的实际应用程序功能不同,我真的不想在我的所有代码中重构 ViewControllers只是为了使用它们。
有点令人沮丧的是,在弃用某些系统的同时,它们没有提供允许替换系统以与原始功能相同的方式使用的功能。
任何帮助表示赞赏!