2010-10-20 112 views

回答

18

在模擬器中,用戶的當前位置始終位於加利福尼亞州的庫比蒂諾。

如果您使用Interface Builder來添加地圖視圖,只需選中地圖視圖的屬性檢查器中的「顯示用戶位置」複選框。 (選擇地圖視圖並鍵入command-1以顯示屬性檢查器。)

如果以編程方式添加或操作地圖視圖,請將地圖視圖的showsUserLocation屬性設置爲YES


更新:事實證明,這是可能的,只是沒有使用內置的地圖視圖功能,它並不總是工作。

最近版本的SDK(必須在Snow Leopard上運行)可以使用CLLocationManager獲取運行模擬器的機器的位置。然後,您可以使用此位置創建註釋以在地圖視圖上顯示。它不會像內置的「用戶位置指示器」(至少不是沒有一些工作),但會顯示用戶的當前位置。

請參閱this post以瞭解何時此技術無法使用的詳細信息。

有關使用CLLocationManager和CLLocationManagerDelegate的示例代碼,請參見CLLocationManager documentation的「相關示例代碼」部分,然後在地圖視圖上顯示用戶的位置。

+0

+1 ---- OK我收回我的答案,並高興地知道是否有可能...... 我新的事情要做.... 謝謝... – Saawan 2010-10-20 06:15:26

+0

請給我看看我的問題,並建議的東西----和http: //stackoverflow.com/questions/3966796/are-there-any-libraries-or-examples-of-how-to-handle-ofx-on-the-iphone – Saawan 2010-10-20 06:20:25

10
self.mapView.delegate = self; 
self.mapView.showsUserLocation = YES; 

這將顯示當前位置MkMapview

如果您正在使用Interface Builder,在屬性檢查器中,我們有一個選項Behaviour,其中有一個選項Show User Location,用於檢查該選項是否也執行相同操作。

如果你不能在模擬器上看到,

  1. 公開賽在模擬器中的應用。
  2. 從菜單欄選擇調試 - >位置 - >(如果選擇「無」選項,將其更改爲「自定義位置」)並設置位置。

隨着CLLocationManager我們也可以得到當前位置, 進口Corelocation框架項目

.h文件

#import <CoreLocation/CoreLocation.h> 
@property (nonatomic, strong) CLLocationManager *locationManager; 
@property (nonatomic, strong) CLLocation* currentLocation; 

.m文件

if ([CLLocationManager locationServicesEnabled]) 
    { 
     if (self.locationManager == nil) 
     { 
      self.locationManager = [[CLLocationManager alloc] init]; 
      self.locationManager.delegate = self; 
      self.locationManager.desiredAccuracy = kCLLocationAccuracyBest; 
      self.locationManager.distanceFilter = kDistanceFilter; //kCLDistanceFilterNone// kDistanceFilter; 
     } 

     [self.locationManager startUpdatingLocation]; 
    } 

委託函數:

-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations 
{ 
    self.currentLocation = [locations lastObject]; 
    // here we get the current location 
} 

希望這個答案可以幫到你。

0

無論是iOS 6,6.1還是iOS 7,模擬器都不會顯示用戶當前的位置。要模擬位置,您可以看到here。如果你想顯示用戶的當前位置,然後運行你的應用程序在設備或更改模擬器設置 - 從模擬器菜單

選擇調試>位置>自定義地點....

相關問題