【问题标题】:iOS 7.1 simulator: object cannot be niliOS 7.1 模拟器:对象不能为 nil
【发布时间】:2015-12-08 22:18:24
【问题描述】:

在装有 iOS 5.1.1 的真机 iPad 上,此代码运行正常:

[window addSubview:[navigationController view]];

但在 Xcode 6.4 iPad 模拟器 iOS 7.1 中崩溃

NSLog(@"AppDelegate application 2");
NSLog(@"window: %@", window); 
NSLog(@"navigationController: %@", navigationController);
[window addSubview:[navigationController view]];
NSLog(@"AppDelegate application 3");


2015-09-12 14:24:35.251 SWPi[1209:607] AppDelegate application 2
2015-09-12 14:24:35.270 SWPi[1209:607] window: <UIWindow: 0x79fcdd80; frame = (0 0; 768 1024); autoresize = RM+BM; gestureRecognizers = <NSArray: 0x79fd3860>; layer = <UIWindowLayer: 0x79f721e0>>
2015-09-12 14:24:35.271 SWPi[1209:607] navigationController: <UINavigationController: 0x79fc8030>
2015-09-12 14:24:35.273 SWPi[1209:607] CRASH: *** -[__NSArrayM insertObject:atIndex:]: object cannot be nil

会发生什么?

【问题讨论】:

    标签: ios xcode ipad ios-simulator addsubview


    【解决方案1】:

    不管它能否解决崩溃,我建议将navigationController 添加到VC 层次结构中。在最简单的情况下,您只需要更改它:

    [window addSubview:[navigationController view]];
    

    到这里:

    window.rootViewController = navigationController;
    

    【讨论】:

    • 这不能回答问题,最好作为评论。
    猜你喜欢
    • 2016-01-21
    • 1970-01-01
    • 2015-06-24
    • 2014-12-10
    • 2015-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多