2014-09-26 51 views
5

Theo Google Map documentation. Trong IPhonePhóng to bản đồ google api 3 [ios]

Quá trình thu phóng được thực hiện bằng một chụm hai ngón tay.

Vì vậy, khi tôi chạm ngón tay trên màn hình và di chuyển, sau đó phóng to bản đồ, sau đó phóng to thu nhỏ.

Hiện nay, tôi đang thử nghiệm mà trên IPhone 5 với ios 7.1.2IPhone 4S với ios 8

Tôi đang sử dụng JQuery Mobile Framework trong ứng dụng của tôi và bản đồ được tạo ra tự động. (khi tôi tạo bản đồ với các giá trị cố định thì nó hoạt động tốt)

Tôi đã tạo ra fiddle mà bạn có thể thấy cùng một vấn đề. Link

Một số hình ảnh về vấn đề bản đồ hình ảnh đầu tiên của tôi mở

first

bức tranh thứ hai khi tôi cố gắng để phóng to bản đồ của tôi với ngón tay nhúm.

second picture

Ảnh thứ ba khi tôi thả ngón tay ra khỏi màn hình.

third picture

Vì vậy, nó không thể duy trì mức thu phóng hiển thị trong hình thứ hai. Làm thế nào để giải quyết vấn đề này

+0

nhúm zoom này không trở lại mức zoom thực tế, bởi vì gạch không được nạp trong hành động phóng to. Nếu bạn 'console.log (mapClass.map.getZoom());' bạn sẽ nhận được mức thu phóng sau khi thu phóng pinch kết thúc. – Omar

+0

chỉ trong trường hợp 'webapp'? Bởi vì trong ứng dụng bản đồ đã được cài đặt trong 'IPhone', nó hoạt động theo cách đó. – Blu

+0

Ví dụ của bạn đang thu phóng chính xác theo tài liệu của Google. Có vẻ như bạn muốn đơn giản làm cho hình ảnh bản đồ lớn hơn, thay vì tải các ô xếp mới ở mức thu phóng cuối cùng. Có lẽ một số loại phóng to khung nhìn sẽ hoạt động? –

Trả lời

1

Hãy thử thay thế:

google.maps.event.addListener(mapClass.map, 'zoom_changed', function() { 
    mapClass.map.panTo(myLatlng); 
}); 

với:

google.maps.event.addListener(mapClass.map, 'zoom_changed', function() { 
    mapClass.map.panTo(mapClass.map.center); 
}); 

Hy vọng nó giúp.

+0

không có gì thay đổi. Vấn đề tương tự tồn tại – Blu

+0

Rất tiếc! tôi sẽ xem lại nó một lần nữa –

0

Tôi đã giải quyết vấn đề này (hoặc có thể là một vấn đề tương tự) mua điều chỉnh công việc tôi đã làm trong trình nghe zoom_changed. Tôi đã sử dụng lodash throttle.

Thay thế này

google.maps.event.addListener(mapClass.map, 'zoom_changed', myFunction); 

Với

google.maps.event.addListener(mapClass.map, 'zoom_changed', _.throttle(myFunction,100)); 
Các vấn đề liên quan