[英]Address on the Pin instead number in Google map in iphone
替代文字http://www.freeimagehosting.net/uploads/a96118564f.png
在上圖中,您可以在圖釘上看到數字。
我不需要那個數字,而是當用戶單擊該圖釘時,應該顯示該位置的地址嗎?
不知道怎么辦 我聽說過自定義圖釘。 我在嘗試。 但是,如果您知道,請您幫我一下。
提前致謝。
您在這里有兩個選擇:
如果您要做的只是緯度/經度,並將其作為地址顯示在地圖上,則需要使用MKReverseGeocoder
類,該類將吐出一個MKPlacemark
,然后可以使用addAnnotation:
將其添加到您的MKMapView
。
如果您要在地圖上添加一些“事物”類,例如“人物”,則應使該類符合MKAnnotation
協議(即,它需要一個坐標,標題和字幕屬性)。 然后,您可以在MKMapView
委托上實現mapView:viewForAnnotation:
方法,並返回MKAnnotationView
的自定義子類。 當您的“人員”在地圖視圖中可見時,它將添加到地圖中。
如果使用MKMapView
,則需要創建自己的MKAnnotation
來添加到地圖。 注釋類實現以下實例方法:
- (NSString *)title
返回大頭針的標題,通常是第一行
- (NSString *)subtitle
返回大頭針的字幕,通常是第二行。
非常感謝,您度過了美好的一天,當我發現我的字幕沒有采用nsstring stringwithformat,它崩潰了並且當我直接以字符串格式分配相同的硬編碼值時,這讓我感到非常驚訝。 非常奇怪,現在至少沒有崩潰了,非常感謝您的解決方案
是的,我有一些不同的解決方案。 按照@msaeed的說明,我更改了類的構造函數。 我已經實現了以下代碼,它按我的要求工作
-(NSString *)subtitle {
return [NSString stringWithFormat:@"%f",coordinate.latitude];
}
-(NSString *)title {
return Title;
// return [NSString stringWithFormat:@"%f",coordinate.longitude];
}
-(id)initWithCoordinate: (CLLocationCoordinate2D) c
{
coordinate=c;
return self;
}
-(id)initWithCoordinate: (CLLocationCoordinate2D) c Title:(NSString*)xz
{
coordinate=c;
if(self=[super init])
{
if(Title!=nil)
[Title release];
Title=[[NSString alloc]initWithString:xz];
}
return self;
}
注意以下圖像,我已經解決了。 圖片已解決。 http://www.freeimagehosting.net/uploads/fae045c2bf.png
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.