2014-11-01 59 views
-1

我知道如何从第一视图通过使用“PrepareForSeque”传递变量到所述第二视图。但我想将变量传递给第五个视图,第一个视图和第五个视图之间没有任何转换。你能帮我吗?如何从第一视图中的值传递到第五视图

米娜 最佳

+1

http://stackoverflow.com/questions/5210535/passing-data-between-view-controllers – 2014-11-01 18:26:35

+0

就我个人而言,我会使用一个Singleton。这是一个关于单身和IOS等常见的设计模式教程:http://www.raywenderlich.com/46988/ios-design-patterns – 2014-11-01 18:30:17

回答

1

您可以通过保存和检索数据

NSString *valueToSave = @"someValue"; 
[[NSUserDefaults standardUserDefaults] setObject:valueToSave forKey:@"preferenceName"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

NSString *savedValue = [[NSUserDefaults standardUserDefaults] 
    stringForKey:@"preferenceName"]; 

建立在AppDelegate中可变的,由宋访问该值与NSUserDefaults的走 AppDelegate对象。

+1

是NSUserDefaults的存储在应用程序的多个执行状态 - 这是低效使用它们在这方面。 – 2014-11-01 18:23:28

0

您可以通过只使用类方法场景传递数据。

FirstViewController:

在您的m文件中声明:

static NSInteger* staticScore; 

创建类的方法,并返回该值:

+ (NSInteger*) passScore { 
    return staticScore; 
} 

在FifthViewController#import这个类,并得到像这样的值:

[FirstViewController passScore]; 
相关问题