2012-03-03 2 views
0

Я недавно портировал свое приложение iphone с xcode 3 на xcode 4, и я получил ошибку SIGABRT. Я нахожусь проблемная линия (это закомментировано линия -> в моей реализации делегата приложения):Ошибка SIGABRT - Портирование приложения из xcode 3 в xcode 4

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    // Override point for customization after application launch. 

    // Set the view controller as the window's root view controller and display. 
    self.window.rootViewController = self.viewController; 
    //navigationController = [[UINavigationController alloc] initWithRootViewController:self.window.rootViewController]; 
    navigationController.navigationBar.tintColor = [UIColor 
                 colorWithRed:217.0/255 
                 green:33.0/255 
                 blue:0 
                 alpha:1]; 
    navigationController.navigationBarHidden = YES; 
    [self.window addSubview:navigationController.view]; 
    [self.window makeKeyAndVisible]; 
    return YES; 
} 

Любых идеи, почему navigationController = [[UINavigationController alloc] initWithRootViewController:self.window.rootViewController]; является причиной проблемы?

EDIT: компилятор возвращает основной метод и отображает ошибку sigabrt.

int main(int argc, char *argv[]) { 

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; 
    int retVal = UIApplicationMain(argc, argv, nil, nil); //jumps to this line 
    [pool release]; 
    return retVal; 
} 

ответ

0

То, что у вас есть, не имеет большого смысла. Попробуйте следующее:

navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController]; 
self.window.rootViewController = navigationController; 

И удалите строку [self.window addSubview:navigationController.view];.

+0

все еще не работает - такая же ошибка – user559142

+0

Записано ли что-нибудь? – edc1591

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