NSMutableArray
Toを保存するのは初めてNSUerdefaults
です。
これがiVarの宣言です:.hファイル
@interface GameData : NSObject {
NSMutableArray *PPLayers;
}
@property (nonatomic,retain) NSMutableArray *PPLayers;
.mファイル
@synthesize PPLayers;
これが、オブジェクトを配列に追加してデフォルトに保存する方法です。
-(void)AddObject:(NSString *) object ToArray:(NSMutableArray*)array{
if (array == PShoes) {
[PShoes addObject:object];
NSLog(@"Object : %@",object);
[[NSUserDefaults standardUserDefaults]setValue:PPLayers forKey:@"pplayers"];
[[NSUserDefaults standardUserDefaults]synchronize];
NSLog(@"%@",PPLayers);
}
動作する場合もあれば、アプリがクラッシュする場合もあります。
これが私が配列をロードしようとしている方法です:
PPLayers = [[NSUserDefaults standardUserDefaults]mutableArrayValueForKey:@"pplayers"];
ここで何かがおかしいのですが、私には何がわかりません。時々私がそれをロードするときそれは私に与えますnull
。アプリは、シミュレーターから実行した場合にのみ保存します。私はいくつかの助けを得たいですplz。ありがとう!