-1

関数にいくつかの値があり、その関数に取り込まれ、別の関数で必要になります。

これらは値です。

  NSString *latitude =  [NSString stringWithFormat:@"%f", newLocation.coordinate.latitude];
NSString *longitude =  [NSString stringWithFormat:@"%f", newLocation.coordinate.longitude];
NSString *stringFromDate = [formatter stringFromDate: newLocation.timestamp];

新しい場所が見つかるたびにデータベースに送信するには、別の関数でこれらが必要です。

誰もそれを修正する方法を知っていますか?

4

1 に答える 1

3

CLLocationManagerDelegateを使用していると思いますか?

したがって、新しい場所が見つかったら、このメソッドに送信します。

– (void)locationManager:didUpdateToLocation:fromLocation:

そこから、値をデータベースに書き込むメソッドを呼び出して、値をパラメーターとして渡すことができます。例えば:

– (void)locationManager:(CLLocationManager *)locationManager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)newLocation {
    NSString *latitude =  [NSString stringWithFormat:@"%f", newLocation.coordinate.latitude];
    NSString *longitude =  [NSString stringWithFormat:@"%f", newLocation.coordinate.longitude];
    NSString *stringFromDate = [formatter stringFromDate: newLocation.timestamp];

    [self myFuntionThatWritesToDatabaseWithLatitude:latitude longitude:longitude date:stringFromDate];
}

- (void)myFuntionThatWritesToDatabaseWithLatitude:(NSString *)latitude longitude:(NSString *)longitude date:(NSString *)stringFromDate {
     // write to Database
}
于 2012-09-04T13:47:54.733 に答える