jfjldsfjljfkls
jfjldsfjljfkls

Reputation: 91

Clicking button in Simulator causes app to crash

I tried How do I prompt the user for push notification permission after a button is pushed? and it didn't work.

Because the code from How do I prompt the user for push notification permission after a button is pushed? didn't work, I deleted it. The app should have gone back to normal, right?

Instead, I can't even run it anymore. After I clicked a button within Simulator, Xcode showed this error:

    2017-04-30 21:02:21.528 GradientAlarm[63166:7174122] 
    [GradientAlarm.ViewController allowNotifAction:]: unrecognized selector 
    sent to instance 0x7a0420b0
    2017-04-30 21:02:21.535 GradientAlarm[63166:7174122] *** Terminating app 
    due to uncaught exception 'NSInvalidArgumentException', reason: '-
    [GradientAlarm.ViewController allowNotifAction:]: unrecognized selector 
    sent to instance 0x7a0420b0'
    *** First throw call stack:
    (
    0   CoreFoundation                      0x030b3ded __exceptionPreprocess + 
    189
    1   libobjc.A.dylib                     0x0065cd6f objc_exception_throw + 
    49
    2   CoreFoundation                      0x031255b8 -[NSObject(NSObject) 
    doesNotRecognizeSelector:] + 136
    3   CoreFoundation                      0x03039a8d ___forwarding___ + 941
    4   CoreFoundation                      0x030396be _CF_forwarding_prep_0 + 
    14
    5   libobjc.A.dylib                     0x00672220 -[NSObject 
    performSelector:withObject:withObject:] + 63
    6   UIKit                               0x00ad3d90 -[UIApplication 
    sendAction:to:from:forEvent:] + 91
    7   UIKit                               0x00ad3d2a -[UIApplication 
    sendAction:toTarget:fromSender:forEvent:] + 41
    8   UIKit                               0x00c7bd0b -[UIControl 
    sendAction:to:forEvent:] + 64
    9   UIKit                               0x00c7c075 -[UIControl 
    _sendActionsForEvents:withEvent:] + 469
    10  UIKit                               0x00c7afab -[UIControl 
    touchesEnded:withEvent:] + 666
    11  UIKit                               0x00b4a2ca -[UIWindow 
    _sendTouchesForEvent:] + 3066
    12  UIKit                               0x00b4bb8e -[UIWindow sendEvent:] 
    + 4445
    13  UIKit                               0x00af1fe0 -[UIApplication 
    sendEvent:] + 363
    14  UIKit                               0x0136e16f 
    __dispatchPreprocessedEventFromEventQueue + 2973
    15  UIKit                               0x0136563f __handleEventQueue + 
    1255
    16  UIKit                               0x01366ba3 
    __handleHIDEventFetcherDrain + 66
    17  CoreFoundation                      0x03058a5f 
    __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
   18  CoreFoundation                      0x0303e1c4 __CFRunLoopDoSources0 + 
   500
   19  CoreFoundation                      0x0303d69c __CFRunLoopRun + 1084
   20  CoreFoundation                      0x0303cfd4 CFRunLoopRunSpecific + 
   372
   21  CoreFoundation                      0x0303ce4b CFRunLoopRunInMode + 123
   22  GraphicsServices                    0x04d58a7a GSEventRunModal + 71
   23  GraphicsServices                    0x04d5895f GSEventRun + 80
   24  UIKit                               0x00ad1cb9 UIApplicationMain + 148
25  GradientAlarm                       0x0008cbab main + 75
26  libdyld.dylib                       0x03f16779 start + 1)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb) 

I don't know why this happened. I deleted the information that I had added and opened a new project from which I copy and pasted all of the defaults, but I still have the same error message.

Upvotes: 0

Views: 309

Answers (2)

jfjldsfjljfkls
jfjldsfjljfkls

Reputation: 91

The answer to this question is quite simple. The console's error message wasn't very helpful, but I was looking around and realized I had linked the same button to the View Controller twice, and that even after I deleted the corresponding programming block in the View Controller, the button was still linked to something. I just had to right click the button in the storyboard and delete that.

Silly mistake. Thanks everyone for responding!

Upvotes: 0

dmlebron
dmlebron

Reputation: 861

You probably still have the reference to allowNotifAction: in .xib or storyboard view controller.

Go to the interface builder (.xib or storyboard) select the view controller and make sure that there is no reference to the method.

Upvotes: 1

Related Questions