2016-08-31 17 views
7

Trong MKMapView trong một số lvl thu phóng, tất cả các ô bản đồ đều trống. Tôi thử solution với mức thu phóng tối đa. Để bây giờ tôi sử dụng nó như thế này:MKMapView tránh các ô trống [iOS 8+]

func mapView(mapView: MKMapView, regionDidChangeAnimated animated: Bool) { 
     userSpan = mapView.region.span 
     if mapView.zoomLevel() > maxZoomLvl 
     { 
      mapView.setCenterCoordinate(mapView.centerCoordinate, zoomLevel: maxZoomLvl, animated: true) 
     } 
    } 

Nhưng khi sử dụng zoom để max lvl nó phóng to trở lại với hình ảnh động. Nhưng tôi cần một số giải pháp như trong ứng dụng bản đồ apple bản địa: chỉ chặn ở chế độ thu phóng tối đa mà không có khả năng phóng to và không thu phóng lại. Kết quả mong đợi:

  1. Tránh gạch nhạt nhẽo trong zoom tối đa và zoom lại thư bị trả lại (như nó hoạt động ngay bây giờ với giải pháp hiện tại)
  2. Bản đồ nên dừng phóng to nếu không có gạch (Giống như mẹ đẻ ứng dụng bản đồ táo) HOẶC đồ nên chia tỷ lệ các ô hiển thị cuối cùng (như ứng dụng bản đồ google)
+0

là những gì các vấn đề mà bạn đang phải đối mặt ở đây, như tôi hiểu rằng bạn đang nhìn thấy gạch trống khi bạn cố gắng để phóng to, cũng tôi thấy rằng bạn muốn chặn mức thu phóng tối đa. Bạn có thể vui lòng xây dựng thêm. –

+0

@SantoshGurram tìm trong "Kết quả mong đợi" – UnRewa

+0

Bạn có thể cung cấp một số ảnh chụp màn hình với các ô trống không? – kamwysoc

Trả lời

0

Bạn có thể thực hiện việc này bằng cách sử dụng mapView.camera là đối tượng MKMapCamera.

Từ các tài liệu -

var độ cao: CLLocationDistance

Độ cao so với mặt đất, đo bằng mét.

Chỉ cần tìm giá trị phù hợp cho độ cao. Từ câu trả lời này, Is there way to limit MKMapView maximum zoom level?

Nó có vẻ như sau đây có thể giúp em-

- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated { 
// enforce maximum zoom level 
if (_mapView.camera.altitude < 120.00 && !_modifyingMap) { 
    _modifyingMap = YES; // prevents strange infinite loop case 

    _mapView.camera.altitude = 120.00; 

    _modifyingMap = NO; 
} 
} 
+0

Khi bạn thả ngón tay zoom nhảy lại ... Tôi nghĩ rằng tôi không nên sử dụng regionDidChangeAnimated vì nó sẽ được phóng to trở lại trong bất kỳ giải pháp – UnRewa

Các vấn đề liên quan