Всякий раз, когда у меня возникала такая ошибка, это был инициализатор (в вашем случае initWithName :), возвращавший ноль.Это первое, что я бы проверил.Если это не помогло, попробуйте установить точку останова в [TTBaseNavigator presentController:parentURLPath:withPattern:action:]
.
Если этот метод не достигнут, что-то не так с вашей URL-картой.Например, вам может понадобиться ввести код ваших пользователей.Навигация на основе URL работает с URL.Строки, которые нельзя использовать в URL-адресах, нельзя передавать в незашифрованном виде.
Если этот метод достигнут, вы можете использовать отладчик и просмотреть оттуда код, чтобы выяснить, что не так.Еще одна вещь, которую я хотел бы упомянуть, это то, что вам действительно не нужно ссылаться на ваш appDelegate с [[UIApplication sharedApplication] delegate]
, когда вы хотите использовать навигатор.Это одна из причин, почему навигатор так полезен.Попробуйте изменить вызов на:
-(IBAction)search:(id)sender
{
NSString *str = [[NSString alloc] initWithFormat:@"app://album/%@",txtSearch.text];
TTOpenURLFromView(str, self.view);
TTOpenURL(str); // Three20 < 1.0.3
}
Затем можно избавиться от метода toGallery:
.