2012-01-16 41 views
0

我試圖找到一種方法,做到進出變焦通過一個按鈕。如果我將代碼放在方法didAddAnnotationViews內,它將完美地設置初始縮放。我試圖讓變焦與下面的代碼改變,但它一直在崩潰說:如何縮小了的MKMapView而不使用didAddAnnotationViews?

無法識別的選擇發送到實例

我如何在IBAction爲跑的?

-(IBAction)ZoomIn:(MKCoordinateSpan)coordinateSpanWithMapView:(MKMapView *)mv centerCoordinate:(CLLocationCoordinate2D)location 
{ 
    MKCoordinateRegion region; 
    MKCoordinateSpan span; 
    span.latitudeDelta=0.05; 
    span.longitudeDelta=0.05; 
    location = mv.userLocation.coordinate; 
    location = mv.userLocation.location.coordinate; 
    region.span=span; 
    region.center=location; 
    [mv setRegion:region animated:TRUE]; 
    [mv regionThatFits:region]; 
}; 
+0

可以請你發佈完整的錯誤消息?當你將它分配給用戶位置座標時,爲什麼要將「位置」作爲輸入? – chatur 2012-01-16 11:12:05

+0

你編程調用此方法,或者它掛接在IB一個按鈕動作?如果IB,那麼這個方法沒有按鈕操作方法的正確簽名。如果以編程方式顯示你如何調用它。 – Anna 2012-01-16 14:20:30

+0

[MapView類ZoomIn]:無法識別的選擇發送到實例0x8768200。我刪除了通過的位置,它仍然打破 – logixologist 2012-01-16 17:31:40

回答

0

我的問題是,我試圖通過在IBAction線,我不能做的MapView。它不知道該怎麼做。我引用我的代碼,而不是試圖把它傳遞方法的MapView ...

CLLocationCoordinate2D location; 
MKCoordinateRegion region; 
MKCoordinateSpan span; 
span.latitudeDelta=1.00; 
span.longitudeDelta=1.00; 
location = self.myMap.userLocation.coordinate; 
location = self.myMap.userLocation.location.coordinate; 
region.span=span; 
region.center=location; 
[self.LightUpMap setRegion:region animated:TRUE]; 
[self.LightUpMap regionThatFits:region]; 

你可以把這是任何IBAction爲方法現在,它會放大地圖。

0
-(void)zoomOut:btnMinus 
{ 
    MKCoordinateSpan span = mapView.region.span; 
    span.latitudeDelta = span.latitudeDelta * 2; 
    span.longitudeDelta = span.longitudeDelta * 2; 
    region.span=span; 
    [mapView setRegion:region animated:YES]; 
    for(int j=2;j<count;j++) 
    { places[j]=1;} 
    [self filterAnnotations]; 
} 
相關問題