| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > iOS > Не работает двойной щелчок мышью в эмуляторе |
| Автор: torero 4.9.2011, 09:40 |
| Использую пример для UITouch, там для определения точек касания экрана двумя пальцами используются выражения: NSSet *allTouches=[event allTouches]; UITouch *touch1 = [[allTouches allObjects] objectAtIndex:0]; UITouch *touch2 = [[allTouches allObjects] objectAtIndex:1]; но получаю ошибку-Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSArray objectAtIndex:]: index 1 beyond bounds [0 .. 0]' т. е. allObjects не имеет индекса 1, хотя в руководстве к Xcode написано: -(NSArray *)allObjects; В чём тут ошибка? Работаю в симуляторе. |
| Автор: Bitter 4.9.2011, 22:42 |
| index 1 beyond bounds [0 .. 0] означает, что массив имеет один элемент (элемент с индексом 0), а Вы пытаетесь получить доступ к элементу с индексом 1 (то есть ко второму элементу). Он быдет иметь два элемента когда вы коснетесь двумя пальцами по экрану, то есть сделаете мультитач. В симуляторе это можно сделать удерживая клавишу Alt |
| Автор: torero 6.9.2011, 13:36 |
| Спасибо Bitter. Я, действительно, не знал про Alt. Теперь получилось. |