0

そこで、NSNumber オブジェクトの NSMutableArray をファイル「times.plist」に保存し、それをロードして起動時に保持すると、NSLog には正しい値が表示されますが、後で [times count] が 0 になります。

times = [[NSMutableArray alloc] initWithObjects:[[NSNumber alloc] initWithFloat:time],nil];
...

[times writeToFile:@"times.plist" atomically:YES];
...

times = [[NSMutableArray arrayWithContentsOfFile:@"times.plist"] retain];
NSLog(@"%f",[[times objectAtIndex:0] floatValue]);
4

1 に答える 1

0

わかりました DUMB DUMB DUMB. 私がしたことは絶対にしないでください。私の -init; で。メソッド私はすでにコードで自分の times 配列を開始していました:

times = [[NSMutableArray alloc] initWithObjects:nil];

そして、私はそれらを復元しようとしていました:

times = [[NSMutableArray arrayWithContentsOfFile:@"times.plist"] retain];

しかし、私はそれを開始する前にそれを復元していたので、毎回それを消去しました. 私の間違いから学び、あなたの -init; の順序を確認してください。メソッド。いつも。

于 2010-06-20T21:41:49.917 に答える