Как обнаружить взаимодействие с пользователем в MapView (Swift) - PullRequest
0 голосов
/ 04 марта 2020

Попытка решить, как обнаружить жест касания в mapView в быстром режиме. Я перезагружаю mapView, когда было движение, но я хочу отключить это на 15 секунд, если пользователь касается / взаимодействует с картой

Мысли

1 Ответ

0 голосов
/ 05 марта 2020

Решил это. Выкладываю это для других. Я использую boolReloadMapAllowed в других моих функциях рисования карты. В этом случае он не будет перезагружаться, пока пользователь перемещает его, и ждет до 7 секунд после окончания перемещения, прежде чем перезагрузит карту.

Благодаря { ссылка }, чье сообщение действительно помогло , определить, был ли MKMapView перетащен / перемещен

override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    super.touchesMoved(touches, with: event)
    boolReloadMapAllowed = false
    print("Something moved")
          if !(self.tmrMapMove.isValid) {
              let mapMoveSelector : Selector = #selector(vwMain.mapMoveOver)
               self.tmrMapMove = Timer.scheduledTimer(timeInterval: 7, target:self, selector: mapMoveSelector, userInfo: nil, repeats: true)
           }
}

@objc func mapMoveOver() {
    boolReloadMapAllowed = true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...