我有一个只有2个视图控制器的非常简单的应用程序。最初的根控制器上有两个UIButton,它们都通过Storyboard过渡到第二个视图控制器。加载到第二个视图控制器上的信息由链接到两个初始视图控制器的buttonPressed IBAction确定。我遇到的问题是,一旦我点击了两个按钮之一,就会得到第二个视图控制器加载空白。通过调试,我注意到在加载第二个视图之后调用了buttonPressed函数。我如何做到在第二个视图控制器空白加载之前调用buttonPressed函数?

几乎没有涉及任何代码,我同时将UIButtons标记为1和2,并且按钮发送功能根据发件人标记等于1或2加载了两个文本文件。所有内容都在Storyboard中链接在一起。有什么建议么?

* buttonPressed功能:

if([发件人标签] == 1)

count = 1;


其他

count = 2;


计数确定要加载的文件。

*在Storyboard中,我只有2个视图控制器(无导航或任何一种),在初始视图上有两个UIButton,在第二个视图上有一个文本视图以显示文本。 UIButton连接到buttonPressed和第二个视图控制器segue。

最佳答案

这听起来像prepareForSegue的情况!

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if([[segue identifier] isEqualToString:@"First Button Segue Identifier"])
    {
        ViewController *theViewController = segue.destinationViewController;
        theViewController.textProperty = self.firstButtonText;
    }
    else if ([[segue identifier] isEqualToString:@"Second Button Segue Identifier"])
    {
        ViewController *theViewController = segue.destinationViewController;
        theViewController.textProperty = self.secondButtonText;
    }
}


到了那里,它非常通用,因为我不知道您的变量名或所用的文本。同样,如果segue没有单独的标识符,则可以使用发送方来确定按下了哪个按钮。

祝好运!

09-08 05:23