ios导航错误使用按钮
Posted
技术标签:
【中文标题】ios导航错误使用按钮【英文标题】:ios navigation error using button 【发布时间】:2012-05-03 17:15:17 【问题描述】:我正在尝试从登录屏幕转到注册。但是出现错误...
由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'应用程序试图呈现一个 目标上的 nil 模态视图控制器。'
登录.H
#import "SignupController.h"
@interface LoginController : UIViewController
IBOutlet SignupController *signupController;
登录.M
(IBAction)signup:(UIButton*) sender
NSLog(@"lla");
[self presentModalViewController:signupController animated:YES];
【问题讨论】:
错误消息似乎告诉你你需要什么:你试图呈现的视图控制器 (signupController
) 是 nil。在尝试加载它之前,您是否在某处实例化它?!
【参考方案1】:
您需要先分配并启动您的注册控制器。
self.signupController = [[SignupController alloc]initWithNibName:xibname];
[self presentModalViewController:signupController animated:YES];
其中xibname
将是您的 nibfile 的名称,类似于 @"signupController"
如果你的接口文件叫做signupController.xib
塞巴斯蒂安
【讨论】:
【参考方案2】:如果您不使用 nib 文件:
signupController = [[SignupController alloc] init];
[self presentModalViewController:signupController animated:YES];
如果您使用 nib 文件:
signupController = [[SignupController alloc] initWithNibName:@"nib file name with out ext" bundle:nil];
[self presentModalViewController:signupController animated:YES];
【讨论】:
即使对我们中的一些人来说答案很明显,但与你的两行代码搭配的一些话也不会太多.. 得到它:),我会完成它。 即使你没有使用笔尖,你仍然应该使用 nil 参数调用initWithNibName:bundle:
。以上是关于ios导航错误使用按钮的主要内容,如果未能解决你的问题,请参考以下文章
导航栏 rightbaritem 图像按钮错误 iOS 11