我有興趣抓住我的用戶當前的緯度和經度座標,並將它們字面顯示爲視圖上UILabel中的NSSString。正在檢索經緯度CoOrdinates,顯示在UILabel中
我不需要任何MKMapView或以圖形方式顯示任何內容,只需在UILabel中顯示座標即可。這可能嗎?
任何人都可以爲我提供一個出發臺嗎?
感謝
我有興趣抓住我的用戶當前的緯度和經度座標,並將它們字面顯示爲視圖上UILabel中的NSSString。正在檢索經緯度CoOrdinates,顯示在UILabel中
我不需要任何MKMapView或以圖形方式顯示任何內容,只需在UILabel中顯示座標即可。這可能嗎?
任何人都可以爲我提供一個出發臺嗎?
感謝
還有就是CoreLocation框架,做這件工作。您可以通過實施此代理來獲取用戶的當前位置。
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation
雅,它的可能。只需導入#import <CoreLocation/CoreLocation.h>
並聲明代表<CLLocationManagerDelegate>
。那麼你可以在下面的委託方法中獲取值。
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
CLLocationCoordinate2D location=newLocation.coordinate;
NSString *s = [NSString stringWithFormat:@"%f,%f",location.latitude,location.longitude];
}
以下步驟:
添加MapKit.framework到項目
加入的.h#進口 「CoreLocation/CoreLocation.h」 和#進口「MapKit/MapKit .h「
使用委託作爲,@interface yourInterface:UIViewController < MKMapViewDelegate,CLLocationManagerDelegate>
現在添加下面的方法到您的.m文件
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
[self setMapCenter:newLocation.coordinate];
[self._mapView selectAnnotation:[[self._mapView annotations] lastObject] animated:YES];
lblLong.text = [nsstring stringWithFormat:@"%f", newLocation.coordinate.longitude];
lblLat = [nsstring stringWithFormat:@"%f", newLocation.coordinate.latitude];
[self.locationManager stopUpdatingLocation];
}
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
NSLog(@"ERROR");
}
這裏提到CLLocationManager *locationManager;
。祝你好運。
謝謝,我會盡量實施,今天晚上。我假設我可以然後將NSString分配給一個UILabel與location.text = s; ? –
就足夠了。 NSString的經度和緯度值由昏迷(,)分開。 – Sisu
出於某種原因,我無法將它顯示在UILabel中。它編譯沒有問題,但它只是不填充UILabel –