单击按钮后,如何从View Controller导航到另一个View Controller?

时间:2013-05-01 09:06:22

标签: iphone ios objective-c uiviewcontroller uibutton

当我尝试转移到另一个视图时,我收到此异常:

由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法在bundle中加载NIB:'NSBundle(loaded)',名称为'NextViewController''

NextViewController *temp = [[NextViewController alloc]initWithNibName:@"NextViewController" bundle:nil];
[self presentViewController:temp animated:YES comletion:nil];

5 个答案:

答案 0 :(得分:1)

异常表示您的项目中没有 NextViewController.xib 文件。仔细检查您是否拥有它。

另外,请确保您已将 NextViewController 作为文件的所有者类 NextViewController.xib

enter image description here

答案 1 :(得分:1)

首先,检查一下你是否真的有 NextViewController.xib ? 如果否,那么如何加载你的nib文件? 另外,检查您是否将NextViewController指定为文件的所有者类

如果是,

检查,如果您使用 navigationcontroller ? 如果是,请将您的代码更改为:

NextViewController *temp = [[NextViewController alloc]initWithNibName:@"NextViewController" bundle:nil];
[self.navigationcontroller presentViewController:temp animated:YES comletion:nil];  

答案 2 :(得分:0)

首先在rootviewcontroller上的set按钮之后创建uinavigationcontroller对象第一个视图集作为rootview控制器并推送nextvie。

//for mainviewcontroller
UINavigationController *navigation =[[UINavigationController alloc]initWithRootViewController:viewcontroller];
[self.navigationController pushViewController:nextview animated:YES];

答案 3 :(得分:0)

确保您的项目中有名为NextViewController的笔尖。并检查它是否添加到您的捆绑资源上。见截图enter image description here

答案 4 :(得分:0)

如果您使用的是swift 3.0,请尝试以下代码

//Here you can initiate your new ViewController
    let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil)

    let nextViewController = storyBoard.instantiateViewController(withIdentifier: "VadiveluPageViewController") as! VadiveluPageViewController
    self.present(nextViewController, animated:true, completion:nil)

    //if you need navigation controller use below
//self.navigationController?.pushViewController(nextViewController, animated: true)