Вы пытаетесь записать файл в комплект вашего приложения, что невозможно. Вместо этого сохраните файл в папку «Документы».
NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
path = [path stringByAppendingPathComponent:@"drinks.plist"];
Метод pathForResource может использоваться только для чтения ресурсов, которые вы добавили в свой проект в Xcode.
Вот что вы обычно делаете, когда хотите изменить plist в своем приложении:
1. Скопируйте файл drinks.plist из комплекта вашего приложения в папку «Документы» приложения при первом запуске (используя NSFileManager ).
2. Используйте файл в папке «Документы» только при чтении / записи.
UPDATE
Это способ инициализации свойства drinkArray :
NSString *destPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
destPath = [destPath stringByAppendingPathComponent:@"drinks.plist"];
// If the file doesn't exist in the Documents Folder, copy it.
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:destPath]) {
NSString *sourcePath = [[NSBundle mainBundle] pathForResource:@"drinks" ofType:@"plist"];
[fileManager copyItemAtPath:sourcePath toPath:destPath error:nil];
}
// Load the Property List.
drinkArray = [[NSArray alloc] initWithContentsOfFile:destPath];