2013-09-30 18 views
15

Ecco l'errore:- [WelcomeUI _setViewDelegate:]: selettore non riconosciuto inviato a un'istanza 0xc061110

2013-09-30 17:59:23.212 The Solver[422:a0b] -[WelcomeUI _setViewDelegate:]: unrecognized selector sent to instance 0xc061110 
2013-09-30 17:59:23.222 The Solver[422:a0b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[WelcomeUI _setViewDelegate:]: unrecognized selector sent to instance 0xc061110' 
*** First throw call stack: 
(
    0 CoreFoundation      0x023605e4 __exceptionPreprocess + 180 
    1 libobjc.A.dylib      0x014be8b6 objc_exception_throw + 44 
    2 CoreFoundation      0x023fd903 -[NSObject(NSObject) doesNotRecognizeSelector:] + 275 
    3 CoreFoundation      0x0235090b ___forwarding___ + 1019 
    4 CoreFoundation      0x023504ee _CF_forwarding_prep_0 + 14 
    5 UIKit        0x0013d55c +[UIViewController setViewController:forView:] + 40 
    6 UIKit        0x00137fb1 -[UIViewController setView:] + 511 
    7 Foundation       0x00edef68 _NSSetUsingKeyValueSetter + 133 
    8 Foundation       0x00ede493 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 267 
    9 Foundation       0x00f4094a -[NSObject(NSKeyValueCoding) setValue:forKeyPath:] + 412 
    10 UIKit        0x002c5cd5 -[UIRuntimeOutletConnection connect] + 106 
    11 libobjc.A.dylib      0x014d07d2 -[NSObject performSelector:] + 62 
    12 CoreFoundation      0x0235bb6a -[NSArray makeObjectsPerformSelector:] + 314 
    13 UIKit        0x002c482e -[UINib instantiateWithOwner:options:] + 1417 
    14 UIKit        0x00136c95 -[UIViewController _loadViewFromNibNamed:bundle:] + 280 
    15 UIKit        0x0013743d -[UIViewController loadView] + 302 
    16 UIKit        0x0013773e -[UIViewController loadViewIfRequired] + 78 
    17 UIKit        0x00137c44 -[UIViewController view] + 35 
    18 UIKit        0x000605ad -[UIWindow addRootViewControllerViewIfPossible] + 66 
    19 UIKit        0x00060947 -[UIWindow _setHidden:forced:] + 312 
    20 UIKit        0x00060bdd -[UIWindow _orderFrontWithoutMakingKey] + 49 
    21 UIKit        0x0006b44a -[UIWindow makeKeyAndVisible] + 65 
    22 UIKit        0x0001e8e0 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1851 
    23 UIKit        0x00022fb8 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 824 
    24 UIKit        0x0003742c -[UIApplication handleEvent:withNewEvent:] + 3447 
    25 UIKit        0x00037999 -[UIApplication sendEvent:] + 85 
    26 UIKit        0x00024c35 _UIApplicationHandleEvent + 736 
    27 GraphicsServices     0x022be2eb _PurpleEventCallback + 776 
    28 GraphicsServices     0x022bddf6 PurpleEventCallback + 46 
    29 CoreFoundation      0x022dbdd5 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 53 
    30 CoreFoundation      0x022dbb0b __CFRunLoopDoSource1 + 523 
    31 CoreFoundation      0x023067ec __CFRunLoopRun + 2156 
    32 CoreFoundation      0x02305b33 CFRunLoopRunSpecific + 467 
    33 CoreFoundation      0x0230594b CFRunLoopRunInMode + 123 
    34 UIKit        0x000226ed -[UIApplication _run] + 840 
    35 UIKit        0x0002494b UIApplicationMain + 1225 
    36 The Solver       0x0000274d main + 141 
    37 libdyld.dylib      0x059a4725 start + 0 
) 
libc++abi.dylib: terminating with uncaught exception of type NSException 
(lldb) 

Ecco il codice:

#import <UIKit/UIKit.h> 

#import "AppDelegate.h" 

int main(int argc, char *argv[]) 
{ 
    @autoreleasepool { 
     return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 
    } 
} 

Ecco ciò che è langue:

return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

Si prega di spiegare cosa sto facendo male.

+3

Sembra che tu stia utilizzando NIB, hai provato a impostare una classe personalizzata per la vista di livello superiore del controller di visualizzazione ('WelcomeUI') e' WelcomeUI' non è una sottoclasse di 'UIView'. –

+0

Come risolverei questo? –

+0

Vai in IB, seleziona il controller di visualizzazione, seleziona la vista di livello superiore, nella parte destra cambia "Custom Class" da "WelcomeUI" a qualunque cosa tu intendessi. –

risposta

31

Come discusso nei commenti, il problema riguarda la configurazione NIB. La vista root del controller di visualizzazione utilizza una classe personalizzata WelcomeUI, che non è una sottoclasse di UIView. Durante il tentativo di impostare la sua vista, il controller della vista ha caricato il NIB che ha inizializzato con successo un'istanza di WelcomeUI, ma si è bloccato quando ha tentato di eseguire il selettore _setViewDelegate: poiché non è una vista.

Per risolvere questo problema, è sufficiente entrare in Interface Builder, espandere il controller di visualizzazione per selezionare la vista (probabilmente appare come "WelcomeUI" nella barra laterale), aprire l'ispettore identità e rimuovere la classe personalizzata.

View of the above code in Xcode

Dal momento che si aveva intenzione di impostare la classe personalizzata del vostro controller della vista, è possibile selezionare il controller della vista stessa nella barra laterale sinistra e impostare la sua classe personalizzata a "WelcomeUI".

+0

Questo è uno di quegli errori che probabilmente mi lasceranno a pezzi per giorni. Gli errori relativi allo storyboard dovrebbero fornire più messaggi/log di tipo umano = \ – ACLima

Problemi correlati