iphone - 如何应对所有贬值

标签 iphone objective-c ios ios6

这可能是一个有点转储的问题,但是面对 iOS6 中的所有贬值,您如何处理向后兼容性?我目前不确定如何自己处理它们。

例子:

UITextAlignment 已弃用,但使用 NSTextAlignment 将无法在使用 iOS 5 及更早版本的设备上运行

dismissModalViewControllerAnimated: 也已弃用,取而代之的是 dismissViewControllerAnimated: completion:

那么,如何才能/应该如何保持与旧 iOS 版本的兼容性?有没有办法在 XCode 4.5 模拟器中测试旧版本?

感谢您的任何建议!

最佳答案

要在您的代码中获取所有已弃用的方法,只需将您的应用程序的部署目标设置为 iOS 6.0,然后编译您的代码,然后您将收到每个已弃用方法的警告。

为了解决弃用问题,请使用以下其中一项:

1-

float systemVersion = [[[UIDevice currentDevice]systemVersion]floatValue];


    if(systemVersion < 6.0)
    {
        calendarArray = [self.eventStore calendars];
    }
    else
    {
        calendarArray = [self.eventStore calendarsForEntityType:EKEntityTypeEvent];
    }

2- 使用 respondToSelecter 方法来检测对象是否响应此类选择器。

关于iphone - 如何应对所有贬值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13608284/

相关文章:

iphone - 向图层添加阴影会导致视网膜外观退化

javascript - 嵌入 youtube 视频在 iPhone 上有滚动问题

iphone - 将 indexpath 行传回父 View

ios - 突出显示 UIAlertView 中的单词? (加粗文字)

ios - 从自制模型迁移到核心数据模型 : setter/getter issue

ios - 如何在tableview中设置UITableViewCellSeparatorStyleNone?

javascript - 如何: Dynamically set <BODY> background-position?

ios - WKInterfaceButton 多行标题

iphone - 如何查找facebook的friend_id列表?

objective-c - 自定义NSMenu(像Apple的Dock右键菜单)?