Итак, я фиксирую несколько касаний и определяя число и где произошло каждое касание, и я вижу различное поведение между UIView UIViewController.затрагивает обработку событий касания в UIView vs UIViewControllers
В принципе, обработчик событий закодирован ниже: (в этом случае touchsEnded, но это действительно не имеет значения). То, что происходит в представлении, заключается в том, что я получаю всю совокупность касаний, но в контроллере я получаю только одно касание одновременно, то есть никогда не бывает набора штрихов, но TouchesEnded выполняется для каждого касания, которое произошло в тот же момент.
Я добавляю subviews как можно более точно ... Может ли кто-нибудь «испануться ко мне, что происходит? Почему версия контроллера не дает мне коллекцию?
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
int total = 0;
for (UITouch *touch in touches)
{
for(UIView *myView in [contentView subviews])
{
if (CGRectContainsPoint([myView frame], [touch locationInView:self.view]))
total++; // this is always 1 for the UIViewController
// but I get the full number within the UIView version
}
}
}