iOS SDK 6.1的UITableView与iOS SDK 5.1不兼容

dav*_*vid 1 iphone uitableview ios5.1 ios6.1

我已创建UITableView项目的XCode 4.6与iOS 6.1 SDK,和目标SDK设置为5.1,当应用程序调用dequeueReusableCellWithIdentifiercellForRowAtIndexPath函数,应用程序抛出一个异常,模拟器是5.1,在模拟器6.x的就可以了.

1: [UITableView dequeueReusableCellWithIdentifier:forIndexPath:]:发送到实例的无法识别的选择器

2:由于未捕获异常而终止应用程序NSInvalidArgumentException,原因:-[UITableView dequeueReusableCellWithIdentifier:forIndexPath:]:无法识别的选择器发送到实例

Raj*_*071 6

1. dequeueReusableHeaderFooterViewWithIdentifier
可用性适用
于iOS 2.0及更高版本.
- >运行此功能所需的最低iOS版本是iOS 2.0

2 .dequeueReusableCellWithIdentifier:forIndexPath:
可用性适用
于iOS 6.0及更高版本.
- >运行此功能所需的最低iOS版本是iOS 6.0

编辑 如果您想使用此功能,您可以检查当前的设备版本,然后执行此操作

NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
NSLog(@"curr version = %f",[currSysVer floatValue]);

if ([currSysVer floatValue] >= 6) {
    //iOS 6.0 and later code
    // dequeueReusableCellWithIdentifier:forIndexPath:
}
else{
    //dequeueReusableHeaderFooterViewWithIdentifier
}
Run Code Online (Sandbox Code Playgroud)