2014-11-01 17 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]; 
相關問題