может помочь мне? Мне нужно остановить метод MkMapView setRegion: region animated: true. Мне нужно установить новый анимированный регион с опцией, чтобы остановить его. Спасибо.MKMapView setRegion как остановить анимацию
1
A
ответ
-1
Самый простой способ - nil
делегат MKMapView
, так что после него не будет вызван метод делегата.
self.mapView.delegate = nil;
0
Одна вещь, вы можете попробовать это создание CADisplayLink
, которая привязана к частоте обновления экрана, а затем в обратном вызове, проверяя текущее состояние карты. Там вы можете позвонить другому setRegion:animated:
в текущую позицию, чтобы остановить предыдущую анимацию.
2
Если вы создаете еще одну анимацию, но для другого региона, кроме существующего, это приведет к аннулированию существующего. Примечание. Если я попытаюсь создать новую анимацию, но для нее видимыйMapRect, iOS просто проигнорирует ее.
func stopZoom() {
//the trick: creating a region very similar to the existing one
var mapRegion:MKCoordinateRegion = MKCoordinateRegionForMapRect(self.mapView.visibleMapRect)
mapRegion.span.latitudeDelta = mapRegion.span.latitudeDelta + 0.000001
UIView.animateWithDuration(0.1, delay: 0.0, options: [], animations: {
let mapRegion:MKCoordinateRegion = mapRegion
self.mapView.setRegion(mapRegion, animated: true) //this will invalidate the other animations
}) { (completed: Bool) -> Void in
}
}
для справки метод startZoom:
func startZoom() {
UIView.animateWithDuration(10, delay: 0.0, options: [UIViewAnimationOptions.CurveLinear, UIViewAnimationOptions.AllowUserInteraction, UIViewAnimationOptions.BeginFromCurrentState], animations: {
let mapRegion:MKCoordinateRegion = MKCoordinateRegionMakeWithDistance(self.coordinate, 500, 500)
self.mapView.setRegion(mapRegion, animated: true)
}) { (completed: Bool) -> Void in
}
}
провел довольно много времени, чтобы понять это, я надеюсь, что это будет полезно для вас.
Смежные вопросы
- 1. setRegion: MKMapView не отвечает
- 2. MKMapView setRegion анимированный не показывает анимацию
- 3. MKMapView setRegion: нечетное поведение?
- 4. MKMapView setregion быстры
- 5. MKMapView setRegion to Annotation
- 6. MKMapView: setRegion не работает!
- 7. MKMapView setRegion не является постоянной
- 8. MKMapView падает с помощью setRegion
- 9. MKMapView замирает, когда карта setRegion
- 10. Как узнать, когда MKMapview setRegion: анимированный: закончен?
- 11. Внутри UICollectionViewCell setRegion не влияет на MKMapView
- 12. Получение разного выхода из setRegion: on MKMapView
- 13. MKMapView setRegion «привязывает» к предопределенным уровням масштабирования?
- 14. Отключить события касания, пока MKMapview делает SetRegion Анимационный вызов функции
- 15. Как остановить прокрутку в mkmapview?
- 16. как остановить основную анимацию?
- 17. Как остановить анимацию UITextField.rightView?
- 18. Как остановить анимацию css
- 19. Как остановить CSS-анимацию
- 20. Как остановить анимацию изображений?
- 21. Как остановить анимацию javascript
- 22. Как остановить анимацию
- 23. Как остановить анимацию кожи?
- 24. Как остановить анимацию CALayers?
- 25. Как остановить мою анимацию
- 26. Как остановить анимацию animatePNG?
- 27. Как остановить анимацию jquery?
- 28. Как остановить анимацию WPF?
- 29. Остановить MKMapView от перезагрузки
- 30. MKMapView и setRegion: анимированные: не обновлять визуальные карты