Почему приложение Ma c Catalyst не использует numberOfTouchesRequired? - PullRequest
0 голосов
/ 03 марта 2020

Я портирую приложения с iOS на Ma c, используя Ma c Catalyst, и заметил, что жесты касанием двумя и тремя пальцами не работают. Вот пример кода:

UIView *test = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];
test.backgroundColor = [UIColor redColor];
[self.view addSubview:test];
UITapGestureRecognizer *gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(toggleColumns:)];
gesture.numberOfTouchesRequired = 2;
gesture.delegate = self;
[test addGestureRecognizer:gesture];

Если я коснусь красной рамки двумя пальцами на трекпаде Magi c, ничего не произойдет. Целевой метод не вызывается и методы делегирования жестов не похожи на gestureRecognizer:shouldReceiveTouch:. Однако, если я закомментирую строку numberOfTouchesRequired, будет работать однопалый кран.

Я не вижу ничего об этом ограничении в документации , и, очевидно, это не общий предел с мультитач, потому что UIPinchGestureRecognizer работает как ожидалось. Я что-то упустил, или я должен сообщить об ошибке?

...