iOS 7 和 iOS 8 中的警报视图与 UIAlertController

Posted

技术标签:

【中文标题】iOS 7 和 iOS 8 中的警报视图与 UIAlertController【英文标题】:AlertView vs. AlertController in iOS7 and iOS8 【发布时间】:2015-07-21 03:20:53 【问题描述】:

我一直在阅读 AlertController 应该用于 ios 8 及更高版本,而在 iOS7 版本中使用 AlertView。

嗯,我目前正在开发一款我希望与 iOS7 及更高版本兼容的应用。我是否必须选择 AlertView 让 iOS7 用户使用它而不是 8,或者选择 AlertController 而忽略 iOS7 上的每个人都无法使用它?

我想同时获得两个人群,但似乎我只能使用一个并隔离一组用户......有没有办法同时利用两者?

【问题讨论】:

【参考方案1】:

你可以同时使用。一个用于 iOS 7,一个用于 iOS 8。只需执行以下操作:

if ([UIAlertController class]) 
  // iOS 8 - show alert controller
 else 
  // iOS 7 - show alert view

【讨论】:

所以这是基本检查类是否可用的语法?我不知道它会这么简单....除非我们在不同的页面上。我还看到了这个关于 swift 2 (hackingwithswift.com/swift2) 的链接,并且提到了一些关于#available 的内容,看起来它也可以完成这项工作! 就这么简单,结果和swift中使用#available一样。

以上是关于iOS 7 和 iOS 8 中的警报视图与 UIAlertController的主要内容,如果未能解决你的问题,请参考以下文章

ios 7 中未显示社交视图的默认警报

如何在 iOS 8 上显示没有按钮的 UIAlertView?

带有 UIActivityIndi​​catorView 的 iOS 7 样式弹出窗口/警报视图

iOS - 未调用警报视图中的 segue

如何从 iOS 中的警报通知操作启动视图控制器?

从 iOS 8 中的 UIAlertView 中删除 alpha