Я устанавливаю приложение UIGestureRecognizer для iPhone. Я делаю это в InterfaceBuilder, перетаскивая распознаватель жестов при длительном нажатии из библиотеки объектов в представление, которое должно принимать жесты.
После того, как я добавляю распознаватель жестов таким образом, у него есть Referencing Outlet Collection, указывающая на представление, которое должно принять этот жест.
Затем в ViewController я добавляю IBOutlet, указывающий на GestureRecognizer
IBOutlet UILongPressGestureRecognizer *gestRec;
и соответствующее действие для распознавателя жестов
-(IBAction)longPress:(id)sender;
После этого Gesture Recognizer показывает в построителе интерфейса выход и действие с именем longPress: с целью с именем ControlManager.
Но моя программа вылетает, когда я делаю долгое нажатие в iPhoneSimulator. Когда я NSlog описание моего GestureRecognizer, он показывает следующий результат:
<UILongPressGestureRecognizer: 0x6859620;
state = Possible;
view = <UIView 0x6859e20>;
target= <(action=longPress:, target=<ControlManager 0x6859af0>)>>
Я думаю, что проблема в последней строке, и она должна выглядеть так:
target=<ControlManager 0x6859af0>;
action=longPress:
Я делаю что-то неправильно?