Проблемы с жестами салфетки

#ios #cocoa-touch #swift

#iOS #cocoa-touch #swift

Вопрос:

Я однажды использовал жест салфетки в xCode 6 (используя Swift). Это сработало хорошо.

 @IBAction func ArrasteiDireita(sender: UISwipeGestureRecognizer) {
    println("Arrastei Direita")
}
  

Я удалил жест (в main.storyboard) и пытаюсь вместо этого использовать жест панорамирования, но я не знаю, почему жест салфетки все еще требуется.

Я получаю следующую ошибку, если прокомментирован соответствующий метод ( ArrasteiDireita выше):

 2014-07-05 10:48:51.400 Verdadeiro ou Falso[51178:2926619] -    [_TtC19Verdadeiro_ou_Falso4Jogo ArrasteiDireita:]: unrecognized selector sent to instance     0xb23bfa0
2014-07-05 10:48:51.402 Verdadeiro ou Falso[51178:2926619] *** Terminating app due to    uncaught exception 'NSInvalidArgumentException', reason: '-[_TtC19Verdadeiro_ou_Falso4Jogo   ArrasteiDireita:]: unrecognized selector sent to instance 0xb23bfa0'
*** First throw call stack:
(
0   CoreFoundation                      0x00842646 __exceptionPreprocess   182
1   libobjc.A.dylib                     0x0216d8e3 objc_exception_throw   44
2   CoreFoundation                      0x00849575 -[NSObject(NSObject) doesNotRecognizeSelector:]   277
3   CoreFoundation                      0x00794407 ___forwarding___   1047
4   CoreFoundation                      0x00793fce _CF_forwarding_prep_0   14
5   UIKit                               0x01466e63 _UIGestureRecognizerSendActions   327
6   UIKit                               0x0146509c -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:]   1657
7   UIKit                               0x0146772d -[UIGestureRecognizer _delayedUpdateGesture]   60
8   UIKit                               0x0146b1cc ___UIGestureRecognizerUpdate_block_invoke689   347
9   UIKit                               0x0146af6d _UIGestureRecognizerRemoveObjectsFromArrayAndApplyBlocks   317
10  UIKit                               0x0145e0a8 _UIGestureRecognizerUpdate   3786
11  UIKit                               0x0108ff3b -[UIWindow _sendGesturesForEvent:]   1356
12  UIKit                               0x01090d9f -[UIWindow sendEvent:]   769
13  UIKit                               0x01056c29 -[UIApplication sendEvent:]   242
14  UIKit                               0x010665e2 _UIApplicationHandleEventFromQueueEvent   20518
15  UIKit                               0x0103bcc5 _UIApplicationHandleEventQueue   2154
16  CoreFoundation                      0x00766faf __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__   15
17  CoreFoundation                      0x0075c34d __CFRunLoopDoSources0   253
18  CoreFoundation                      0x0075b8a8 __CFRunLoopRun   952
19  CoreFoundation                      0x0075b22b CFRunLoopRunSpecific   443
20  CoreFoundation                      0x0075b05b CFRunLoopRunInMode   123
21  GraphicsServices                    0x0417e3ca GSEventRunModal   192
22  GraphicsServices                    0x0417e207 GSEventRun   104
23  UIKit                               0x0103f6e5 UIApplicationMain   1526
24  Verdadeiro ou Falso                 0x0000d591 top_level_code   97
25  Verdadeiro ou Falso                 0x0000d5cb main   43
26  libdyld.dylib                       0x026aeac9 start   1
)
libc  abi.dylib: terminating with uncaught exception of type NSException
(lldb) 
  

Поскольку жест салфетки выполняется перед жестом панорамирования, я не могу получить доступ к методу жестов панорамирования:

 @IBAction func Arrastei(sender: UIPanGestureRecognizer) {
    println("Arrastado")
}
  

Есть ли какое-либо другое место, где мне нужно удалить ссылку на жест салфетки?

Комментарии:

1. unrecognized selector sent to instance . Но самое странное в том, что, даже удалив жест из раскадровки, метод в коде все еще функционирует.

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

3. Даже если я удалю UIImageView (с именем Imagem ), я все еще получаю сообщение об ошибке ( this class is not key value coding-compliant for the key Imagem )

4. Почему вы удалили просмотр изображения? Не делайте этого. Загуглите эту ошибку «ключ-значение», и вы поймете, почему она у вас возникла. Примечание: Вы не соблюдаете соглашения об именовании ObjC / Swift. Пожалуйста, сделайте это, чтобы другим было легче читать ваш код. developer.apple.com/library/Mac/documentation/Cocoa/Conceptual /…