Определите, есть ли какие-либо прикосновения в иерархии представлений - PullRequest
0 голосов
/ 25 мая 2020

Как лучше всего определить, происходит ли какое-либо активное касание в иерархии представлений? Что-то вроде:

view.hasTouches

возвращает true, если view или любой из его потомков имеет активные касания.

Тем, кто предлагает использовать UIResponder API обработки событий касания, например touchesBegan, обратите внимание, что view не принимает эти вызовы, если один из его потомков обрабатывает события касания.

1 Ответ

0 голосов
/ 25 мая 2020

Вы можете использовать методы touchesBegan и touchesEnded в UIViewController следующим образом:

class ViewController: UIViewController {
    var isTouching = false
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        isTouching = true
    }
    override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
        isTouching = false
    }
}
...