1

私はObjective-Cにかなり慣れていないので、ユーザーの場所を見つけようとしていました。以下は私が持っているものですが、に解析の問題があり(![cLLocationManager locationServicesEnabled])ます。

iOS6では廃止されたと思いますが、代わりに何を使うべきかわかりません。

- (void)updateLabels {
    if (location != nil) {
        self.latitudeLabel.text = [NSString stringWithFormat:@"%.8f",location.coordinate.latitude];
        self.longitudeLabel.text = [NSString stringWithFormat:@"%.8f",location.coordinate.longitude];
    } else {
        self.longitudeLabel.text = @"";
        self.latitudeLabel.text = @"";

        NSString *statusMessage;
        if ([lastLocationError.domain isEqualToString:kCLErrorDomain] && lastLocationError.code == kCLErrorDenied) {
            statusMessage = @"Location Services Disabled";
        } else {
            statusMessage = @"Error Getting Location";
        } else if (![CLLocationManager locationServicesEnabled]) { //Problem lies here
            statusMessage = @"Location Services Disabled";
        } else if (updatingLocation) {
            statusMessage = @"Searching...";
        } else {
            statusMessage = @"Press the Button to start";
        }

        self.messageLabel.text = statusMessage;         
    }
}

どんな助けでも大歓迎です。

4

2 に答える 2

1

問題のある行に余分な「[」があり、メソッドが間違っています。あなたが持っている:

if (![[CLLocationManager locationServiceEnabled])

そのはず:

// Remove extra [ and spell method name correctly
if (![CLLocationManager locationServicesEnabled])
于 2012-11-21T00:32:41.140 に答える
1

クラス メソッド+ (BOOL)locationServicesEnabledは廃止されていないため、正常に動作するはずです。

関連するインポートをクラスに追加しましたか?

#import <CoreLocation/CoreLocation.h>
于 2012-11-21T14:35:06.823 に答える