2011-12-28 5 views
0

Im пытается сделать приложение iOS с Xcode, до сих пор все работало хорошо. У меня есть контроллер навигации на MainWindow.xib, сначала он загрузил RootViewController NIB, но теперь я сменил его на main, потому что раньше я хотел запускать экран. Но теперь приложение запускается при запуске с ошибкой «SIGABRT». Тема 1 0 прерывани:Ошибка приложений при запуске

0x99771bdd <+0167> jmp 0x99771c0c <abort+214> 

в 11 UIApplicationMain это:

0x0036da9b <+1175> xor %eax,%eax 

и main.m:

int retVal = UIApplicationMain(argc, argv, nil, nil); 

, где он остановился.

Новые файлы: StartScreen.h:

#import <UIKit/UIKit.h> 
#import "RootViewController.h" 

@interface StartScreen : UIViewController { 
    RootViewController *rootViewController; 

    IBOutlet UIButton *showList; 
} 

@property(nonatomic, retain) RootViewController *rootViewController; 

@end 

StartScreen.m:

#import "StartScreen.h" 

@implementation StartScreen 
@synthesize rootViewController; 

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization 
    } 
    [showList addTarget:self action:@selector(showListButtonClicked) forControlEvents:UIControlEventTouchUpInside]; 
    return self; 
} 

-(void)showListButtonClicked { 
    if(self.rootViewController == nil) { 
     RootViewController *view2 = [[RootViewController alloc] initWithNibName:@"rootviewcontroller" bundle:nil]; 
     self.rootViewController = view2; 
     [view2 release]; 
    } 
    rootViewController.title = @"Test"; 
    [self.navigationController pushViewController:self.rootViewController animated:YES]; 
} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
} 

#pragma mark - View lifecycle 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
} 

- (void)viewDidUnload 
{ 
    [super viewDidUnload]; 
} 

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    return (interfaceOrientation == UIInterfaceOrientationPortrait); 
} 

@end 

приложение непосредственно отключается через 1 секунду, когда изображение появляется при запуске ....

(Еще одна проблема заключается в том, что перед этой ошибкой появилась ошибка «SIGKILL» появилась после закрытия и перезапуска приложения в симуляторе)

Пожалуйста, помогите :)

+0

Можете ли вы подтвердить, что приложение использует надлежащие методы при отладке? Выполняется ли ваш код делегирования приложения правильно? – LordTwaroog

+0

'*** Завершение приложения из-за неперехваченного исключения« NSUnknownKeyException », причина:« [ setValue: forUndefinedKey:]: этот класс не является ключевым значением, совместимым с кодировкой для ключевого showList.'' Как вы думаете что? – Dion

ответ

1

Проверьте свои соединения в файле .XIB. Похоже, что StartScreen использует файл, где «File Owner» установлен в RootViewController.

+0

В StartScreen.xib он говорит, что Class является «StartScreen». Но когда я удаляю UIButton или его соединение с UIButton * showList в Interface Builder в представлении, это работает ... – Dion

+0

Другая возможность аналогичная ошибка в файле .xib RootViewController. Проверьте его таким же образом. – LordTwaroog

+0

, который также относится к классу RootViewController ... Теперь я попытался добавить кнопку вручную, но ее не видно: D Когда кнопка nores не работает нормально ... – Dion

Смежные вопросы