У меня есть контроллер модального представления, который вызывает другой контроллер модального представления в viewDidLoad на основе условия if.
Странная проблема, с которой я сталкиваюсь, это то, что я впервые компилирую приложение и открываю 1-й модальный режим.Контроллер вида, он работает нормально и продолжает показывать контроллер второго вида.Теперь, если я прекращаю выполнение приложения, перестраиваю и запускаю приложение, оно вылетает (зависает, когда работает только кнопка «Домой»), когда я открываю 1-е модальное представление.
Это ошибка, которую я получаю:
Detected an attempt to call a symbol in system libraries that is not present on the iPhone:
_Unwind_Resume called from function -[NSArray makeObjectsPerformSelector:] in image CoreFoundation.
2010-09-23 20:19:56.526 MySuperDuperApp[6117:207] CoreAnimation: ignoring exception: [<TwitterLogin 0x7484dc0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key actionButton.
TwitterLogin - это имя второго контроллера модального представления, который не отображается.
Я попытался поместить NSLogs, чтобы проверить, где именно происходит сбой.
//... part of the method which is called in
// viewDidAppear of first modal view controller.
- (void)login {
NSLog(@"Begin TwitterBasicVC login");
loginPopup = [[TwitterLogin alloc] init];
loginPopup.oAuth = oAuth;
loginPopup.viewDelegate = self;
loginPopup.interfaceDelegate = self;
// Show Login screen.
loginPopup.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
NSLog(@"presenting loginPopup modalView");
[self presentModalViewController:loginPopup animated:YES];
[loginPopup release];
NSLog(@"End TwitterBasicVC login");
//... viewDidLoad of second modal view controller.
- (void)viewDidLoad {
NSLog(@"Begin TwitterLogin viewDidLoad");
[super viewDidLoad];
queue = [[NSOperationQueue alloc] init];
...
Напечатано сообщение «представляющий loginPopup modalView», однако сообщение «Начать TwitterLogin viewDidLoad» не напечатано.Я не знаю, почему происходит сбой между представлением модального представления и viewDidLoad.
Более странно то, что это происходит каждый раз, когда я собираю / запускаю приложение.(Я попытался удалить приложение и собрать его, но это все еще происходит)
РЕДАКТИРОВАТЬ: я добавил первые несколько строк метода входа в систему, где twitterLogin назначается на alloc.Я также пытался вызвать метод с помощью executeSelector: withObject: afterDelay со значениями 0,0 и 1,0, и проблема все еще существует.
РЕДАКТИРОВАТЬ 2: я делал чистую сборку каждый раз, когда я пытаюсь установить приложение на iPhone /Симулятор (после удаления приложения с устройства / симулятора).Приложение работает нормально с этим методом.Могу ли я предположить, что загрузка приложения в магазине приложений безопасна?
Любые предложения о том, как мне следует поступить в отладке, очень помогут мне:)
Спасибо