У меня есть приложение на основе представления (без раскадровок) с кнопкой, которая представляет модальное представление с веб-представлением в нем. Веб-просмотр загружает видео с YouTube, пользователь нажимает на него и смотрит видео в полноэкранном режиме.
Когда видео заканчивается (или пользователь нажимает «Готово»), видеопроигрыватель закрывается, но по какой-то причине я вижу основной вид вместо контроллера модального вида (и не могу снова вызвать модальный вид с помощью кнопка, хотя вызывается IBAction) ...
Текущий код модального вида (в контроллере основного вида):
SomeViewController *controller = [[[SomeViewController alloc] initWithNibName:@"SomeViewController_iPhone" bundle:nil] autorelease];
controller.delegate = self;
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:controller animated:YES];
Затем в SomeViewController у меня есть UIWebView, который загружает видео YouTube:
- (void)embedYouTube:(NSString *)urlString frame:(CGRect)frame {
NSString *embedHTML = @"\
<html><head>\
<style type=\"text/css\">\
body {\
background-color: transparent;\
color: white;\
}\
</style>\
</head><body style=\"margin:0\">\
<embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" \
width=\"%0.0f\" height=\"%0.0f\"></embed>\
</body></html>";
NSString *html = [NSString stringWithFormat:embedHTML, urlString, frame.size.width, frame.size.height];
[self.webView loadHTMLString:html baseURL:nil];
}
Видео воспроизводится просто отлично, но когда оно закончено, оно закрывается, и вместо модального представления (SomeViewController) отображается основной вид.
Никакой ошибки не дается, хотя.
Насколько я понимаю, видеоплеер также является модальным видом, поэтому иерархия выглядит примерно так:
-- Main View
---- Modal View (SomeViewController with WebView)
-------- Video Modal View (invoked by the WebView)
Так что я не понимаю, почему контроллер основного вида отображается после завершения воспроизведения видео, и почему он не позволяет мне снова вызывать контроллер модального вида ...
Спасибо за любую помощь!