Я переключился с Google Maps api на iOS, чтобы здесь отображал api для iOS. Я бы хотел отключить панорамирование/прокрутку карты во время масштабирования, чтобы сохранить местоположение gps центральной точки одинаковым. Любое предложение? Заранее спасибо.Отключить панорамирование при масштабировании
ответ
Вы можете использовать [MPAMapView disableMapGestures:] apis, чтобы отключить панорамирование/прокрутку. Подробная информация может быть найдена @https://developer.here.com/mobile-sdks/documentation/ios/topics/map-gestures.html
Вы можете выполнить этот прецедент, используя комбинацию NMAMapGestureDelegate
и NMAMapViewDelegate
.
Например, вы можете реализовать метод обработчика - (void)mapView:(NMAMapView *)mapView didReceivePinch:(float)pinch atLocation:(CGPoint)location;
, чтобы добавить дополнительный код, чтобы отключить жесты, которые вы хотите заблокировать. И затем снова включите жесты, как только жест щепотки закончится.
Что-то, как это должно сделать трюк, вы, возможно, придется играть с реализацией немного, чтобы заставить его работать, как вы хотели:
- (void)mapView:(NMAMapView *)mapView didReceivePinch:(float)pinch atLocation:(CGPoint)location
{
[mapView disableMapGestures:(NMAMapGestureTypePan | NMAMapGestureTypeTwoFingerPan)];
// execute default pinch behaviour
[mapView.defaultGestureHandler mapView:mapView didReceivePinch:pinch atLocation:location];
}
...
- (void)mapViewDidEndMovement:(NMAMapView *)mapView
{
[mapView enableMapGestures:NMAMapGestureTypeAll];
}
Вы можете посмотрите на NMAMapView
- (NSInteger)respondToEvents:(NSInteger)events withBlock:(NMAMapEventBlock)block
также. Возможно, ответ на событие NMAMapEventGestureEnded
с использованием respondToEvents
может работать лучше для вашего прецедента.
Дополнительная информация:
- 1. Отключить отзывчивость при масштабировании
- 2. Отключить панорамирование на колесиках мыши при масштабировании, но сохранить его при перетаскивании
- 3. UIScrollView: отключить прокрутку при масштабировании
- 4. Отключить панорамирование некоторых элементов Fabric.js
- 5. Как отключить переходы CSS3 при масштабировании?
- 6. Отключить OnClickListener при масштабировании или перетаскивании вида
- 7. Как отключить фильтрацию OpenGL при масштабировании текстур?
- 8. Отключить диагональное панорамирование вложенных FlipView
- 9. Отключить панорамирование камеры в SceneKit
- 10. Отключить панорамирование/масштабирование в com.google.android.maps.MapView
- 11. Могу ли я отключить панорамирование карт при выборе аннотаций
- 12. Карты Google Отключить панорамирование пользователей во всех событиях
- 13. Как избежать панорамирования карты при первоначальном масштабировании
- 14. Weird Overlay поведение рисования при масштабировании MapView
- 15. Отключить жест увеличения, панорамирование и увеличение зума
- 16. Mapbox Android отключить прокрутку и панорамирование карты
- 17. телефон: WebBrowser отключить панорамирование/зум wp7?
- 18. JavaFX ScrollPane: отключить панорамирование для событий касания
- 19. Как отключить сглаживание при масштабировании изображения в андроиде?
- 20. Отключить расстояние ячейки таблицы при масштабировании на iOS Safari
- 21. Отключить анимацию при масштабировании/повороте с помощью преобразования
- 22. iOS Отключить прокрутку для просмотра карты ТОЛЬКО при масштабировании
- 23. Отключить изменение размера фона div при масштабировании страницы
- 24. изменение стиля при масштабировании
- 25. Диаграмма исчезает при масштабировании
- 26. Изображения сжимаются при масштабировании
- 27. Snap.svg Перетаскивание при масштабировании
- 28. Различия при масштабировании изображений
- 29. Поведение ImageView при масштабировании
- 30. MKUserTrackingBarButtonItem сбой при масштабировании
Я уже пытался отключить жест во время выполнения щепотку. Проблема в том, что если вы зажимаете края, т. Е. Не в центре карты. Центр карты уходит. В google maps iOS sdk тоже может быть достигнуто с помощью свойства allowScrollGesturesDuringRotateOrZoom класса gmsuisettings. –
Похоже, вам следует попробовать использовать 'NMAMap'' transformCenter' и 'fixedMapCenterOnMapRotateZoom' – AndrewJC
Привет, Андрей, спасибо за ваши быстрые ответы. Хотя свойство fixedMapCenterOnMapRotateZoom определено в документации, но, к сожалению, похоже, что это свойство было удалено в SDK версии 3.1.1. –