MapKit为IOS 4.3.3中的setUserTrackingMode repsondsToSelector

时间:2012-01-31 23:36:04

标签: ios map ios4 ios5

我有以下代码

BOOL ios5 = [mapview respondsToSelector:@selector(setUserTrackingMode:animated:)];
if(ios5)
{
    if(compass && tracking)
        [mapview setUserTrackingMode:MKUserTrackingModeFollowWithHeading animated:YES];
    else if (tracking)
        [mapview setUserTrackingMode:MKUserTrackingModeFollow animated:YES];
    else
        [mapview setUserTrackingMode:MKUserTrackingModeNone animated:YES];
}
else
{
    // Do it the version 4.0 way
}

根据我是否打开指南针或跟踪标记并跟踪iOS 5中的用户位置,它可以正常工作。

但是,它也适用于我正在测试的另一个设备4.3.3版本。它似乎响应了选择器,实际上就像在iOS 5中一样。

这是因为该功能是在iOS 4中但未公开,因此我冒着被拒绝的风险吗?

有人可以对此有所了解吗? 谢谢 了Donie

1 个答案:

答案 0 :(得分:1)

我相信你在使用它之前首先检查功能是正确的。无论您运行的是什么版本,该API 已经都有记录。通过这种方式,您可以向4.3用户提供向后兼容性。