【问题标题】:How to connect storyboard to code如何将故事板连接到代码
【发布时间】:2013-12-30 12:50:53
【问题描述】:

我创建了空的 IOS 项目并想创建 UI。我搜索了有关将故事板连接到代码的信息,但没有任何内容,只有 xib 文件。那么可以在空项目中使用情节提要代替xib吗?如何?

【问题讨论】:

  • 新文件 > 故事板。
  • 不是这样的。如何从代码访问情节提要?
  • 没有。这很简单。添加一个新的故事板文件。称之为 Main.storyboard。在您的项目设置中,将其设置为主情节提要。
  • 看我回答。我添加了一张图片。

标签: ios objective-c xcode storyboard xib


【解决方案1】:

假设您的项目中已有 Storyboard 文件,您可以像这样获取 Storyboard 对象

    UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:[NSBundle mainBundle]];
    YourViewController *yourVC = [storyBoard instantiateViewControllerWithIdentifier:@"identifier"];
    //Do whatever with the viewcontroller object
    [self.navigationController pushViewController:yourVC animated:YES ];

注意:

  1. 检查情节提要名称
  2. 在情节提要中检查您的视图控制器标识符

【讨论】:

  • 是的。我试过这个。但它没有看到故事板。当我创建故事板时,我将其称为“输入”bit.ly/1fVrsFH,并将视图控制器称为“myViewController”bit.ly/1aiDVzl
  • @LongSmith - 将其设置为主界面文件。这可能会有所帮助。看我的回答。
  • @LongSmith 只是检查我的图像。确认您已经提供了这样的标识符。
【解决方案2】:

首先创建一个类名的空项目

然后从 file->userInterface->storyboard 创建一个故事板

然后在左侧菜单中按情节提要后为情节提要命名,然后放置一个视图控制器并按住视图控制器,将类名称命名为已创建的 Uiviewcontrollerclass

最后按项目选择主界面为ViewController.storyboard

如果你想编码假设 segue 使用 [self performSegueWithIdentifier: @"nameofcontroller" sender: self];

如果不想继续这样下去

[self performSegueWithIdentifier: @"TheSequeName" sender: self]; @"TheSequeName" 是在您 ctrl 拖动按钮以在情节提要上打开新视图控制器时定义的

如果你不使用segue,有很多变种可以打开一个新的视图控制器。最基本的是使用单独的 NIB(没有情节提要)

SecondViewController *view = [[SecondViewController allow] initWithNibName:@"NibName" bundle:nil];

如果你在 Storyboard 上声明你的视图控制器,你可以使用

viewController *view = [self.storyboard instantiateViewControllerWithIdentifier:@"viewStoryboardId"]; 
Then you show your viewController using navigation controller

[self.navigationController pushViewController:view animated:YES];

希望有效果

【讨论】:

    【解决方案3】:

    从“文件”菜单中,创建一个新的Storyboard

    叫它Main.storyboard

    在您的项目设置中,将其设置为部署信息下的主界面文件。

    【讨论】:

    • 这只是告诉他们如何创建一个新的故事板——它如何回答如何在代码中连接它们的问题?
    • 如果有多个 Storyboard,通过代码处理 Storyboard 会更实用。在我看来,这是一种更好、更清晰、更易于理解的方法。
    • 您的回答只是告诉某人如何创建新的故事板,而不是如何将其与代码一起使用。答案应该基于事实而不是观点。这个答案可能很好,但它缺乏细节并且没有回答所提出的问题。
    • 我们在这里讨论不同的方法。意见定义方法。我并不是说 iPrabu 的回答是错误的。随心所欲。
    • 这仍然没有回答已经提出的问题。
    【解决方案4】:
    New File - > Objective-C Class (of type View Controller) -> without Xib file
    

    现在在故事板上,转到那个特定的 xib 文件

    in property window -> Show Identity Inspector -> change class to above added ViewController.
    

    就是这样,现在您可以通过代码控制情节提要的 xib 文件了。

    【讨论】:

    • 这只是告诉他们如何创建一个新的故事板——它如何回答如何在代码中连接它们的问题?
    • 如何控制xib我知道。对控制故事板感兴趣。
    猜你喜欢
    • 2016-01-12
    • 2020-04-18
    • 2017-10-26
    • 1970-01-01
    • 2013-10-22
    • 2015-12-05
    • 2020-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多