Pracuję nad aplikacją iOS 5+ z najnowszym SDK.EXC_BAD_ACCESS na niestandardowym UIView z niestandardowym XIB
Utworzyłem niestandardowe UIView (TopMenuView
) z niestandardowym XIB. W programie Interface Builder zmieniłem, na tej klasie XIB, UIView
na TopMenuView
. Nie ustawiłem żadnego File's Owner
.
Na TopMenuView.m
mam:
- (id)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self)
{
NSLog(@"init with coder: %d", counter);
counter++;
// Add custom XIB
NSArray *topMenuView = [[NSBundle mainBundle] loadNibNamed:@"TopMenuView"
owner:nil
options:nil];
UIView *nv = [topMenuView objectAtIndex:0];
[self addSubview:nv];
}
return self;
}
za pomocą interfejsu Builder Dodałem UIView
do UIViewController
i zmienił tę UIView
klasę TopMenuView
.
Ale kiedy uruchomić aplikację, i ten komunikat zalogować 4251 razy: 2013-10-13 20:49:34.078 MyProject[470:c07] init with coder: 0
A potem dostaję EXC_BAD_ACCESS
tutaj:
NSArray *topMenuView = [[NSBundle mainBundle] loadNibNamed:@"TopMenuView"
owner:nil
options:nil];
dodajesz nv jako widok podrzędny, ale gdzie jest główny widok? nie deklarujesz żadnego widoku właścicielowi pliku. musisz dołączyć jeden widok do właściciela pliku. – KDeogharkar