我正在尝试制作类似于iPhone地图的应用。 我想使用Mapkit和搜索栏来查找地址。 然后使用地址将其添加到我的tableview 但我实际上不知道该怎么做。 有人对我有线索吗? 教程或示例?
提前致谢
======================
现在,我可以在桌子上搜索地址。 但我希望有可能当我按下一个引脚时,它会在注释上有一个按钮。 我正在使用这段代码,但你可以看到有一个NSLog,但它没有出现在我的控制台中:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation{
NSLog(@"This is called");
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"customloc"];
[annView setPinColor:MKPinAnnotationColorPurple];
UIButton *button = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
[button addTarget:self action:@selector(goDetail:) forControlEvents:UIControlEventTouchUpInside];
annView.leftCalloutAccessoryView = button;
annView.canShowCallout = YES;
[annView setSelected:YES];
[annView addObserver:self forKeyPath:@"selected" options:NSKeyValueObservingOptionNew context:nil];
return annView;
}
另外,当我打开我的mapview时。我在当前位置获得了一个引脚,但由于某种原因,我的当前位置发生了变化,并在地图上设置了一个新引脚。 我只想要它上面的当前位置引脚和我所选位置的一个引脚 有人能帮我吗? 这是我的代码:
-(void)addPins:(float)lat lon:(float)lon{
CLLocationCoordinate2D location;
location.latitude = lat;
location.longitude = lon;
// forcus around you
MKCoordinateRegion region;
region.center=location;
MKCoordinateSpan span;
span.latitudeDelta=0.005f; // this should be adjusted for high vs. low latitude - calc by cosign or sign
span.longitudeDelta=0.005f;
region.span=span;
[map setRegion:region animated:TRUE];
// add custom place mark
CustomPlacemark *placemark=[[[CustomPlacemark alloc] initWithCoordinate:location] autorelease];
placemark.title = @"";
placemark.subtitle = @"";
[map addAnnotation:placemark];
[placemark release];
}
答案 0 :(得分:0)
您必须为自定义MKAnnotation设置标题和/或副标题才能显示。