проблема с presentModalViewController и uiwebview

#iphone #uiwebview #presentmodalviewcontroller

#iPhone #uiwebview #presentmodalviewcontroller

Вопрос:

Я использую presentModalViewController для моего представления «информация». Я добавил информационную кнопку в верхней части моего NavigationController и, когда она нажата, я вызываю этот метод

 about *ab = [[about alloc] initWithNibName:@"about" bundle:[NSBundle mainBundle]];
ab.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentModalViewController: ab animated: YES];
[ab release];
  

на моей информационной странице есть UIWebView, который содержит некоторые ссылки.
Используя это (и устанавливая делегат uiwebview как self)

 -(BOOL) webView:(UIWebView *)inWeb shouldStartLoadWithRequest:(NSURLRequest *)inRequest navigationType:(UIWebViewNavigationType)inType {
if (inType == UIWebViewNavigationTypeLinkClicked) {
    [[UIApplication sharedApplication] openURL:[inRequest URL]];
    return NO;
}

return YES;
}
  

если пользователь нажимает на ссылку, эта ссылка открывается в safari.

В чем проблема? что если вы сделаете это и вернетесь в приложение, вы окажетесь не в режиме info, а в режиме main … и (в этом проблема) если вы коснетесь информационной кнопки, ничего не произойдет! Вы не можете снова открыть info-view!

Почему?

Спасибо!

Ответ №1:

Попробуйте удалить [ab release] . Это работает?

Комментарии:

1. Другие кнопки, они все еще работают после закрытия приложения. (кстати. ваш iPhone поддерживает многозадачность правильно, просто для уверенности …). Работает ли это, когда вы запускаете его в симуляторе?

Ответ №2:

Как насчет того, чтобы вместо отображения контроллера информационного представления как модального, просто поместить его в стек контроллера навигации? Должно иметь аналогичный эффект, но тогда вы должны все еще находиться на информационном экране при возвращении в приложение. Что-то вроде этого вместо presentModalViewController:animated: вызова:

 [self.navigationController pushViewController: ab animated: YES];
  

Комментарии:

1. есть, я знаю… но я хочу presentModalView эффекта … 🙂