xcode在presentViewController之后更改标签的文本

时间:2014-12-26 00:19:27

标签: xcode label presentviewcontroller

一如既往地依赖这个社区总是非常有帮助!

我真的不明白为什么我的代码不起作用,我在ViewControllerA中玩游戏,例如,有“动作”和更多的东西显示,这些是带有int变量的标签,这些给了我没有问题因为它们正确改变,当游戏完成时我想显示分数等等......

所以我创建了另一个ViewController来实现它,ViewControllerB就是这个例子,事实是A和B Viewcontrollers都属于SAME类,所以我应该能够使用相同的变量,方法和所有东西(实际上我是这样做的)已经并且工作正常)

我为一些标签创建了IBOutlet,这些属于B.我使用presentViewcontroller方法来显示它,标签没有得到任何改变,这里是代码:

NSString *moviments = [NSString stringWithFormat:@"%d",TotalMovements];
NSString *score = [NSString stringWithFormat:@"%d",TotalPoints];
NSString *levelToShow = [NSString stringWithFormat:@"%d",PlayingLevel];


[movementsToShowOnCompletedScreen setText:moviments];
[scoreToShowOnCompletedScreen setText:score];
[levelToShowOnCompletedScreen setText:levelToShow];

UIStoryboard *winOFLevelStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *vc = [winOFLevelStoryboard instantiateViewControllerWithIdentifier:@"mainGame"];
[self presentViewController:vc animated:YES completion:^{


    /*I have tried to add the same code from above setting the labels text
    labels here, same result... 

     */
}];

标签不会更改文字。

就是这样,我希望通过所有这些你可以找到这里发生了什么,IBOutlets很好,我甚至以编程方式更改了这些标签的框架,这样就不会出现问题,网点很好。

如果您需要更多代码或任何内容,请告诉我们!

谢谢你的时间!

1 个答案:

答案 0 :(得分:0)

好吧,我找到了......以防万一有人遇到同样的问题。它解决了它,但不是我想要的方式,所以如果有人知道好方法请告诉我。

由于那些属于同一个类,我刚刚将下面显示的这些行复制/粘贴到我的viewdidload方法,现在标签在必要时会发生变化,但我真的认为这是一个非常糟糕的解决方案。

再次感谢!

相关问题