0

半径 10 km 以内にあるカフェのみを取得する次のコードがあります。

for (NSString *ndlog in log) {
    NSString *name = [names objectAtIndex:i];
    NSString *city = [citys objectAtIndex:i];
    NSString *chain = [chains objectAtIndex:i];
    NSString *street = [streets objectAtIndex:i];
    NSString *ndlig = [lig objectAtIndex:i];
    dlog = [ndlog doubleValue];
    dlig = [ndlig doubleValue];
    NSLog(@"%@,%@,%@,%@,%f,%f,%@,%@", name, city, chain, street, dlog, dlig, ndlog, ndlig);
    CLLocation *location = [[CLLocation alloc] initWithLatitude:dlog longitude:dlig];
    double meters = [userLocation distanceFromLocation:location];
    if (meters < 10000) {
        NSString *data = [NSString stringWithFormat:@"%@,%@,%@,%@", name, city, chain, street];
        [tableData addObject:data];
    }
    i++;
}

iOS シミュレーターでは動作しますが、iPhone 2G ではクラッシュします。(iOS 3.1.3)

私のコードで何が正しくないのですか?

4

1 に答える 1

2

このメソッドdistanceFromLocationは、iOS 3.2 以降でのみ使用できます。ドキュメントから:

iOS 3.2 以降で利用できます。CLLocation で宣言されています。

あなたのシミュレーターはiOSの新しいバージョンだと思います。

于 2012-08-14T13:43:13.577 に答える