Sau khi thiết lập mapView.showsUserLocation
thành true, có thể nhận cập nhật vị trí mà không hiển thị bong bóng MKUserLocation không? Trả lại số 0 trong số mapView:viewForAnnotation:
chỉ hiển thị bong bóng và trả về bất kỳ loại chú thích nào khác cho thấy chú thích mà tôi không muốn.Ẩn MKUserĐịa điểm khi MKMapView hiển thịUserLocation == YES
6
A
Trả lời
25
Bạn có thể ẩn xem vị trí của người sử dụng trong phương pháp didAddAnnotationViews
đại biểu:
-(void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
{
MKAnnotationView *ulv = [mapView viewForAnnotation:mapView.userLocation];
ulv.hidden = YES;
}
0
Swift 3:
func mapView(_ mapView: MKMapView, didAdd views: [MKAnnotationView]) {
if let userLocation = mapView.view(for: mapView.userLocation) {
userLocation.isHidden = true
}
}
Wow, hoàn hảo. Tôi đã không nhận ra bạn có thể thao tác MKAnnotationViews theo cách này. Mặc dù tôi cho rằng nó có ý nghĩa, vì chúng chỉ là các đối tượng UI. Cảm ơn bạn! –
Tôi phải đặt đoạn mã này ở đâu? – Elgert
@Elgert, Phương thức này phải nằm trong lớp thực hiện ủy nhiệm MKMapView (thường là một giao diện chứa chế độ xem bản đồ). Đảm bảo đặt thuộc tính ủy quyền của chế độ xem bản đồ. – Anna