这是我的代码:
@interface TabRegsViewController ()
@end
@implementation TabRegsViewController
@synthesize parent;
@synthesize menu_select;
-(BOOL) shouldAutorotate {
return UIInterfaceOrientationMaskPortrait;
}
-(NSUInteger) supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad {
NSLog(@"***************\t\t\tTab_Reg_ViewDidLoad");
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidAppear:(BOOL)animated {
//[super viewDidAppear:animated];
NSLog(@"***************\t\t\tTab_Reg_ViewDidAppear");
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
此UI仅制作故事板。
这个故事板在iPhone 5中播放,但我的iPhone 6 Plus不能。
************* tab_reg_ViewDidload
将app终止为未捕获的异常
' NSInvalidArgumentException',原因:' *** - [__ NSPlaceholderArray initWithObjects:count:]:尝试从对象插入nil对象[0]'
我不知道该怎么做。
发生此父类按钮事件后,发生presentViewController
事件并更改页面。
iPhone 5正常运行但iPhone 6 plus失败。
我认为这TabRegsViewController
viewDidLoad
没问题,但是例外。
我不知道如何清除此异常。
请帮帮我。
编辑:
这个Class Call方法,这个vc指针和self是nil。为什么呢?..
UIStoryboard *storyboard = [UIStroyboard storyboardWithName:"Main_Storyboard" bundle:nil];
TabRegsViewController *vc = [storyboard instantiateViewControllerWithIdentifier:@"TabRegsViewController"];
vc.parent = self;
[self presentViewController:vc animated:NO completion:nil];
和当前的例外点是
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char * argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromclass([Appdelegate class]));
}
}
错误是线程1:信号SIGABRT argc(int) argv =(unsigned char **)NULL
答案 0 :(得分:1)
似乎nibNameOrNil为nil,在下面的行中添加一个断点。并告诉我们你得到了什么。
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
//Add a breakpoint overhere or NSLog the value nibNameOrNil and nibBundleOrnil
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
跟进回答: 好的,通过阅读这些截图,我只能粗略地了解您的结构。代码看起来很好。根据我的经验,这个错误
'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderArray initWithObjects: count: ]: attempt to insert nil object from objects[0]'
调用某些方法时通常会发生,但缺少某些参数。
你提到
这个Class Call方法,这个vc指针和self是nil。为什么呢?..
你在哪个位置添加断点并发现自己是零? 我需要更多代码来追踪错误||