添加 viewcontroller 到 uiwindow addsubview

add viewcontroller to uiwindow addsubview

//我正在使用。

CalVC *cal = [[CalVC alloc]initWithNibName:@"CalVC" bundle:nil];
cal.view.frame = [UIScreen mainScreen].applicationFrame;

[[[[UIApplication sharedApplication] delegate] window] addSubview:cal.view];

它正在工作,CalVC 出现了,我在 CalVc 中显示了一个计算器,但是当它通过这种方法出现时,计算器的按钮不起作用并显示错误 //exc_bad_access code=exc_i386_gpflt ios.

我认为 CalVC 已发布。所以你必须定义一个 属性 并将其保存在 .h 文件中。

@property (nonatomic, strong) CalVC * _cal;

在 .m 文件中:

_cal = [[CalVC alloc]initWithNibName:@"CalVC" bundle:nil];

只需将 CalVC *cal 的全局引用创建为 属性。由于本地引用,您的视图在这里正在取消分配。

@property (nonatomic, retain) CalVC * _cal;