(void) loadDataFromDisk
{
NSMutableData *data = [[NSMutableData alloc] initWithContentsOfFile:[self pathToDataFile]];
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data];
_cells = [[unarchiver decodeObjectForKey:@"Board"] retain];
[unarchiver release];
[data release];
}
(void) saveDataToDisk
{
NSMutableData *data = [NSMutableData alloc];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:_cells forKey:@"Board"];
[archiver finishEncoding];
[data writeToFile:[self pathToDataFile] atomically:YES];
//[array release];
[data release];
//NSMutableData
}
(BOOL)gameDataExists
{
return [[NSFileManager defaultManager] fileExistsAtPath:[self pathToDataFile]];
}
(NSString *)pathToDataFile
{
NSString *path = [[NSBundle mainBundle] bundlePath];
return [path stringByAppendingPathComponent: GAME_DAT];
}
код выше работал на тренажере, но не на device.it кажется, что файл не может быть найден после выхода я и перезагрузить мое приложение , И если я реализовать pathToDataFile так:Почему сохранить и файл кода нагрузки работает на iPhone симулятор, но не на устройстве
(NSString *)pathToDataFile
{
NSArray * path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES);
NSString *docDir = [path objectAtIndex:0];
return [docDir stringByAppendingPathComponent:GAME_DAT];
}
файл сохранить и перезагрузить работал на устройстве, но метод DrawRect я реализован на мой взгляд, нельзя назвать после того, как я назвал [само setNeedsDisplay].
Крисом Может
Спасибо, но моя проблема в том, что если я изменяю функцию pathToDataFile, мое представление не может быть отображено правильно, оно не может работать в функции drawRect, которую я пишу. – cgha