2012-11-29 60 views
0

我有一個mkmapview,我在運行時創建。首先,我必須告訴我,我的實際問題是在iPad上,而不是在模擬器上。在視圖加載我打電話兩個功能。 fillValues和setDraggable Point。MapView註釋沒有指向應用程序啓動的正確位置

CLLocationManager *locManager = [[CLLocationManager alloc]init]; 
[locManager startUpdatingLocation]; 

CLLocationCoordinate2D currCoordinates = locManager.location.coordinate; 
NSLog(@"the latitude is %f",currCoordinates.latitude); 
NSLog(@"the longitude is %f",currCoordinates.longitude); 
[self fillLatitudeAndLongitudeTextFields:currCoordinates.latitude longitudeValue:currCoordinates.longitude]; 

[self setDraggablePinOnMap:currCoordinates]; 

ON SIMULATOR: 記錄的座標和fillTextfields並設置在map.The setDraggablePinOnMap方法將可拖動的點創建地圖,並設置紅色註釋。所以當應用程序在模擬器上加載時,它會顯示我的位置周圍的藍色圓點和同一位置的紅色針腳(按預期工作)。我移動該引腳並獲取該位置的座標並更新文本字段。

在設備上-IPAD 我第一次加載它時加載的應用程序,當前位置帶有藍點。但是紅色的註釋不是顯示在我目前的位置,而是顯示在赤道地球中心的0,0,0和0,0,0。它沒有按照它的意圖去做。紅色和藍色應該在同一點相交。有趣的一點是這個屏幕的第二次加載(基本上我回到屏幕A並回到這個屏幕。讓我們說屏幕上顯示的地圖是屏幕B)它用藍色和紅色的點相交來加載地圖。它不能只在第一次做它,它喜歡它不能確定第一次加載的位置,但可以在之後做。我怎樣才能讓它顯示在第一次加載?我有道理嗎?請問我是否需要更多信息。

回答

1

由於您尚未等待位置經理對您的位置進行適當修復,因此無法首次執行此操作。您需要讓您對地點經理的delegate進行分類並等待didUpdateLocations回撥。一旦你得到一個位置,你可以用它來設置你的紅色針腳,然後停止位置管理器發送更新,或者只要已經放置了針腳就忽略它們。

+0

謝謝。它像一個魅力。 – RookieAppler

相關問題