2012-12-09 88 views
3

我正在創建一個在地圖上顯示大量標註的iPhone應用程序。我需要應用程序推送另一個視圖,該視圖將顯示該位置的很多信息,當該引腳被點擊時。當在地圖上標註註釋時隱藏彈出框

在我的viewDidAppear我有一段代碼,只是爲了測試目的設置引腳的標題和字幕值。

-(void)viewDidAppear:(BOOL)animated 
{ 
      pin.title = @"Some title"; 
      pin.subtitle = @"Some subtitle"; 
} 

在我didSelectAnnotationView委託我沿此線

- (void)mapView:(MKMapView *)mapView 
didSelectAnnotationView:(MKAnnotationView *)view 
{  
    [self performSegueWithIdentifier:@"showPinDetails" sender:self];  
} 

現在,當我的腳一敲,一酥料餅出現一個短暫的瞬間,顯示在彈出窗口中的標題和副標題的東西,然後segue推動細節視圖。當我點擊後面的按鈕將我重新映射到地圖視圖時,彈出窗口仍然可見。 我怎樣才能以某種方式完全隱藏或禁用彈出?如果我沒有設置標題和字幕值,didSelectAnnotationView委託根本不會被調用。如果你需要我,我會很樂意發佈額外的代碼,我只是想盡可能簡單。

我做錯了嗎?我應該使用一些不同的方法來實現我需要做的事情嗎?由於

回答

8

您沒有設置canShowCallout

canShowCallout - >一個布爾值,指示註釋視圖是否能夠在調出泡泡中顯示額外的信息。

討論 - > 如果該屬性的值是YES,當用戶輕敲一個選擇的註釋視圖

對於更多信息標準標註氣泡被示出可以訪問MKAnnotationView Class Reference

5

好了,我很愚蠢,增加銷當所有我需要做的是設置引腳屬性canShowCallout

annotationView.canShowCallout = NO;