当 SDK 目标为 iOS7 时,UIAlertView 太记账,无法在 iOS8 中替换

Posted

技术标签:

【中文标题】当 SDK 目标为 iOS7 时,UIAlertView 太记账,无法在 iOS8 中替换【英文标题】:UIAlertView is too bookkeeping to replace in iOS8 when SDK target is iOS7 【发布时间】:2014-11-19 16:28:16 【问题描述】:

UIAlertview 已被弃用,取而代之的是 UIAlertController。支持ios7和iOS8真是一团糟。

当部署目标是 iOS7 时,Apple 的观点是什么。我可以同时使用 UIAlertView 吗?有没有人因为这个原因被拒绝了他们的应用程序?

谢谢!

【问题讨论】:

没有理由不继续使用UIAlertView。一旦您放弃对 iOS 7 的支持,请切换到 UIAlertController 嘿,谢谢!这就是我所希望的。如果不在 iOS8 上运行的代码中声明 ,就无法支持 iOS7。我不确定苹果人想要通过弃用这些类来实现什么,但坦率地说,这只是一团糟。 【参考方案1】:

看看这篇文章,作者很好地解释了苹果对此事的思考,它确实有点道理。

基本上,这种变化有助于统一整个 iOS 的警报,它实际上非常简洁。

http://nshipster.com/uialertcontroller/

您仍然可以同时使用 UIAlertView,但以后可能会变得一团糟。

【讨论】:

我当然同意 Matt T 的观点,但为什么会变得混乱呢? iOS9来了,是时候放弃对ios7的支持了,一切都会好起来的吗?没有?【参考方案2】:

我也有同样的顾虑,尤其是当这个 SDK 可能用于 iOS 8 扩展,同时又希望同一个 SDK 支持 iOS 7 用于非扩展用途时。

这是我着手将 UIAlertController 反向移植到 iOS 7 的开源项目的动机。

看看:JVAlertController

【讨论】:

以上是关于当 SDK 目标为 iOS7 时,UIAlertView 太记账,无法在 iOS8 中替换的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 6 + iOS 8 SDK 但部署在 iOS 7 (UIWebKit & WKWebKit)

IOS7.1 SDK可以用XCode6.3吗

iOS7 和 Apple Watch

在 SDK 中支持 Swift,部署目标为 7.0

虽然 ios 6.1 作为基础 sdk xcode 5 为 ios 7 构建 ipa

Facebook SDK:在IOS7上无法完成操作(com.facebook.sdk错误2)