【问题标题】:How to show SomeViewControler using code?如何使用代码显示一些 ViewController?
【发布时间】:2012-09-23 07:44:49
【问题描述】:

我是 Xcode 和 iOS 开发的新手。 我试图弄清楚如何根据按钮单击打开/显示一些视图。 我知道我可以使用 ctrl + 鼠标单击使用 segue 的某些 ViewController 来执行此操作,但我需要先添加一些逻辑。 我怎样才能做到这一点?

【问题讨论】:

    标签: ios cocoa-touch ios5 ios6 segue


    【解决方案1】:

    【讨论】:

    • 不错的文章。我读了第一个,但我需要更多时间来更好地探索 ios 开发。谢谢...
    【解决方案2】:

    有两种方法可以使 segues 起作用。

    您可以从一个按钮 ctrl 拖动到一个新的 ViewController(就像您所做的那样),或者您可以从一个 ViewController 到一个新的 ViewController 拖动 ctrl(从 VC 下方栏中的橙色小方形图标拖动)。

    对于这两种方式,您都可以在创建的 segue 上设置标识符。这是用来在代码中引用它的。

    当您执行第一种方式时,您是在说“按下此按钮时,移动到此 ViewController”。这意味着无论何时按下该按钮,它都会移动到新的 VC。

    第二种方式只是告诉故事板,将有一个转场转移到新的 VC。要运行它,您需要将 IBAction 添加到您的按钮(而不是 segue)。

    在按钮的操作中,您将拥有...

    - (IBAction)buttonPressed:(id)sender
    {
        if (someConditionToCheckMoveToNewVC)
        {
            [self performSegueWithIdentifier:@"mySegue" sender:nil];
        }
    }
    

    只有在您检查的条件为真时才会执行该转场。

    您也可以像这样将信息传递给新的 VC...

    - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    {
        NewViewController *nvc = segue.destinationViewController;
    
        nvc.someProperty = @"blah";
    }
    

    这将在转换到新 VC 之前在新 VC 中设置属性。

    【讨论】:

    • 非常感谢。效果很好!连我都需要传递信息!
    猜你喜欢
    • 1970-01-01
    • 2019-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-05
    • 1970-01-01
    相关资源
    最近更新 更多