可以利用NSUserDefaults或是NSData保存起來在另外一個Scene運用,
這裡先只講NSUserDefaults的作法(因為我現在只用過這種XD)
//宣告
NSUserDefaults *def = [NSUserDefaults standardUserDefaults];
//設定
[def setObject:@"123" forKey:@"StringVal"]; //設定字串
[def setInteger:111 forKey:@"IntegerVal"]; //設定數值
//取得
NSString *getString = [[NSUserDefaults standardUserDefaults]objectForKey: @"StringVal"];
int getInteger = [[NSUserDefaults standardUserDefaults]integerForKey: @"IntegerVal"];
它還可以使用NSInteger、float、BOOL、double、NSURL
這個應該是 cocoa 本身提供的. 不是使用cocos2D應該也能用..
回覆刪除後來有想到...妳這個是要在程式中不同Scene取用變數值的方式..
回覆刪除我後來是做一個 變數管理器的類別. 然後放在AppDelegate那, 或是rootViewControl那邊.
這樣在執行期間,需要存取變數就去找那個管理器就好..
而我使用NSUserDefaults的地方比較在像做資料儲存 跟 一開始程式時初始化的資料來源.
對了,妳用的這個好像也可以做到像全域變數的用法.
回覆刪除如果set 後 , 下了 [def synchronize]; 指令
會把資料存檔, 這樣下次再開起程式時 get取得的會是上次存入的值.
我的手段是建立一個專屬的 singleton object,透過它來存取說 ^^"
回覆刪除