如何以编程方式使用另一个视图中的按钮从情节提要中打开 UIViewController?

Posted

技术标签:

【中文标题】如何以编程方式使用另一个视图中的按钮从情节提要中打开 UIViewController?【英文标题】:How can I open a UIViewController from the storyboard with a button in another view programmatically? 【发布时间】:2014-07-02 08:49:36 【问题描述】:

我正在尝试从代码中打开故事板中的视图,但我不知道如何打开它。在目标 c 中是

 UIViewController *controller = [[UIViewController alloc] 
 initWithNibName:@"myXib" bundle:[NSBundle mainBundle]]; 
 [self.storyboard instantiateViewControllerWithIdentifier:@"myView"]; 

但我不知道如何在 Swift 中实现这一点。

我有我的代码出口声明,我使用这个:

 @IBOutlet var viewAboutUs : UIView = UIView()

 UIView.animateWithDuration(0.2, animations: 

                        self.viewAboutUs.frame = CGRectMake(0, UIScreen.mainScreen().bounds.size.height, UIScreen.mainScreen().bounds.size.width, 260.0)

但是使用这段代码,我的应用程序崩溃了。如何从代码中打开这个视图??

【问题讨论】:

我觉得问题不完整!! 我正在尝试从代码中打开故事板中的视图,但我不知道如何打开它。在目标 c 中是 UIViewController *controller = [[UIViewController alloc] initWithNibName:@"myXib" bundle:[NSBundle mainBundle]]; [self.storyboard instantiateViewControllerWithIdentifier:@"myView"];但我不知道如何在 Swift 中实现这一点。这是我的问题.. 好的,请更新您在评论中发布的问题。 【参考方案1】:

试试这样的:

let controller1 = UIViewController(nibName: "myXib", bundle: nil);

let storyboard = UIStoryboard(name: "myStoryboard", bundle: nil)
let controller2 = storyboard.instantiateViewControllerWithIdentifier("myView") as UIViewController

【讨论】:

以上是关于如何以编程方式使用另一个视图中的按钮从情节提要中打开 UIViewController?的主要内容,如果未能解决你的问题,请参考以下文章

Segues 直接从情节提要 xcode 中的视图控制器警告启动

如何摆脱或更改情节提要以编程方式创建 segue

如何以编程方式从情节提要中填充静态 UITableView?

在页面视图控制器中以编程方式使用情节提要中的视图控制器

如何以编程方式为情节提要中的子视图设置视图控制器?

以编程方式导航控制器后退按钮标题(无情节提要)[重复]