Быстрое использование селектора не работает

Я создал UISwipeGestureRecognizer Объект в Свифте. В строке ниже нет ошибок / предупреждений компиляции. Очистить и построить приложение работает отлично.

let rightSwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, 
                                  action: "handleGesture:")
                                  ^^^^^ Error Part ^^^^^

Но это дает исключение во время выполнения.

dyld: lazy symbol binding failed: Symbol not found: __TFSS37_convertFromBuiltinUTF16StringLiteralfMSSFTBp17numberOfCodeUnitsBw_SS
Referenced from:<AppPath>.app/AppName
Expected in: <AppPath>.app/Frameworks/libswiftCore.dylib

Вот <AppPath> путь приложения для симулятора.

ОС: Mac OS X Yosemite 10.10

Версия Xcode: Xcode 6.0.1 (6A317)

Что я пробовал;

Я могу понять, что проблема с action: "handleGesture:" часть. Так что правильный выбор здесь не используется, я думаю.

Я пробовал с Selector но не закончить

  1. NSSelectorFromString("handleGesture:")
  2. Selector("handleGesture:")
  3. Selector.convertFromStringLiteral("handleGesture:")

Редактировать:

Эта же строка / код работает для другого приложения. Я не могу понять, почему он перестает выполняться из этой строки, где тот же код работает для другого приложения.

1 ответ

Попробуй это у меня работает

var swipeEdit:UISwipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: Selector("selector:"))
swipeEdit.direction = UISwipeGestureRecognizerDirection.Left;
element.addGestureRecognizer(swipeEdit);

Для получения дополнительной информации перейдите через поток в переполнении стека

dyld: символ не найден: ошибка, как решить эту проблему

Другие вопросы по тегам