Я создаю UIActionSheet с текстами кнопок из файла txts. После того, как я поставил NSZombieEnabled, NSDebuEnabled ДА и NSDeallocateZombies к NO, я получаю точку останова с сообщением:Ошибка NSLocalizedStringFromTable
*** - [CFString IsEqual]: сообщение, отправленное на освобождаться например 0x11fae00
Этот происходит после показа в третий или четвертый раз UIActionSheet, а не сразу. Код был это происходит:
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:NSLocalizedStringFromTable(@"text", @"class", @"text")
delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil
otherButtonTitles:NSLocalizedStringFromTable(@"text1", @"class", @"text1"),
NSLocalizedStringFromTable(@"text2", @"class", @"text2"),
NSLocalizedStringFromTable(@"text3", @"class", @"text3"), nil];
[actionSheet showFromTabBar:self.tabBarController.tabBar];
[actionSheet release];
Если удалить NSDealocateZombies, нет больше аварий в тренажере, но я получаю предупреждение в консоли:
[CFString _cfTypeID]: сообщение отправлен освобожденный экземпляр
У вас возникли такие проблемы? Неправильно ли повторять строки из ресурса? В качестве последнего решения я думал о том, чтобы поместить их в переменные-члены один раз, тем самым избегая другого вызова для NSLocalizedStringFromTable для того же текста.