Bir sorunum var. Mevcut konumum harita görünümünde görüntülenir ve ortalanır, ancak harita bölgesi yakınlaştırılmaz. Rob'un tavsiyesini didUpdateToLocation yönteminden alan ve bölge alarak almayı denedim ama doğru şekilde uygulamamalıydım. ViewDidLoad'da setRegion çağrımımı tanıdığını ve düğmelerimin tanınmayacağını düşünüyorum. Lütfen aşağıdaki kodumu kontrol edin ve hataları (hataları) belirtin. Amacım, IBAction düğmelerini kullanarak konumumu yakınlaştırıp uzaklaştırmak.Yakınlaştırmak için IBAction Düğmelerini Kullanma MapView
benim didUpdateToLocation yönteminde viewDidLoad
double miles = 0.5;
MKCoordinateSpan span;
span.latitudeDelta = miles/69.0;
span.longitudeDelta = miles/69.0;
MKCoordinateRegion region;
region.span = span;
[self.mapView setRegion:region animated:YES];
[self.mapView setUserTrackingMode:MKUserTrackingModeFollow animated:YES];
_mapView.mapType = MKMapTypeSatellite;
.m içinde .m
- (IBAction)zoomIn:(id)sender;
- (IBAction)zoomOut:(id)sender;
.h.
[self.mapView setCenterCoordinate:newLocation.coordinate animated:YES];
.Zoom In:
- (IBAction)zoomIn:(id)sender
{
MKCoordinateSpan span;
span.latitudeDelta = _mapView.region.span.latitudeDelta * 2;
span.longitudeDelta = _mapView.region.span.latitudeDelta * 2;
MKCoordinateRegion region;
region.span = span;
region.center = _mapView.region.center;
[self.mapView setRegion:region animated:YES];
}
.Zoom Out:
- (IBAction)zoomOut:(id)sender
{
MKCoordinateSpan span;
span.latitudeDelta = _mapView.region.span.latitudeDelta/2;
span.longitudeDelta = _mapView.region.span.latitudeDelta/2;
MKCoordinateRegion region;
region.span = span;
region.center = _mapView.region.center;
[self.mapView setRegion:region animated:YES];
}
Aynı burada. Lütfen yorumumu Manu'ya oku. Cevap için teşekkürler. – JBeesky
@ user1886166 "span" öğesini "didUpdateToLocation" olarak ayarlıyorsunuz. Yapma. Bunu bir kez yapın (örn., Yeri ilk kez aldığınızda) ve bu noktadan sonra 'MKMapView' yöntemini kullanın; setCenterCoordinate', ancak bu noktadan sonra bununla uğraşmayın. Açıkçası, harita görünümünüzün kullanıcıyı hareket ettikçe takip etmesini istiyorsanız, muhtemelen bunu manuel olarak yapmamalısınız. 'MKMapView' 'userTrackingMode' özelliğini ayarlamayı düşünmelisiniz. – Rob
Denedim ama hala doğru değil. Lütfen bana neyi yanlış yaptığımı söyle ve kontrol et. Üzgünüm, MKMapView'a pek aşina değilim ama ne dediğini anlıyorum. – JBeesky