Pregunta - [WelcomeUI _setViewDelegate:]: selector no reconocido enviado a la instancia 0xc061110


Aquí está el error:

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) 

Aquí está el código:

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

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

Esto es lo que está marcando:

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

Por favor explica qué es lo que estoy haciendo mal.


17
2017-09-30 22:05


origen


Respuestas:


Como comentamos en los comentarios, el problema es con la configuración de su NIB. La vista raíz de su controlador de vista está usando una clase personalizada WelcomeUI, que no es una subclase de UIView. Al intentar establecer su vista, el controlador de vista cargó el NIB que inició correctamente una instancia de WelcomeUI, pero se bloqueó cuando intentó realizar el selector _setViewDelegate: ya que no es una vista

Para solucionar este problema, solo tiene que ir a Interface Builder, expandir su controlador de vista para seleccionar la vista (probablemente aparezca como "WelcomeUI" en la barra lateral), abra el inspector de identidad y elimine la clase personalizada.

View of the above code in Xcode

Como había pensado establecer la clase personalizada de su controlador de vista, puede seleccionar el controlador de vista en la barra lateral izquierda y establecer su clase personalizada en "WelcomeUI".


32
2017-10-01 19:05