2012-01-12 4 views
0

Вот как я добавил видео YouTube в свой проект; Я добавил их в функцию viewDidLoadДобавление youtube видео в мое приложение

UIWebView *web = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 480, 300)]; 
NSString *html = @"<html><head> .........."; // its too long so i cut it short 
[webView loadHTMLString:html baseURL:[NSURL URLWithString:@"http://www.youtube.com/embed/vLBKOcUbHR0"]]; 

    [self.view addSubview:web]; 

Вид, который я вижу;

enter image description here

И то, что я хочу некоторые вещи, как этот

enter image description here

Если присмотреться, вы увидите ToolBar и Done кнопку, а также UIActivityIndicator во втором изображении , и ни один из них не отображается в моем. Как я могу это решить?

ответ

0

Это не так, как вы используете baseURL. Базовый URL - это то, что относительные ссылки будут относиться к тому, если есть ссылки в HTML - сопоставление его с youtube, вероятно, совсем не поможет.

Вместо этого, просто скопировать код из YouTube, который выглядит следующим образом:

<iframe width="420" height="315" src="http://www.youtube.com/embed/2WNrx2jq184" frameborder="0" allowfullscreen></iframe> 

Скопируйте URL из фрейма и открыть его прямо в веб-просмотра, как это:

NSURL *URL = [NSURL URLWithString:@"http://www.youtube.com/embed/2WNrx2jq184"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:URL]; 
[webView loadRequest:request]; 

Это должно сработать.

+0

Есть ли способ автоматического воспроизведения видео без отображения начального экрана (например, просмотр миниатюр, где вы должны нажать кнопку воспроизведения)? – sharon

+0

Не то, чтобы я знал. Возможно, вы сможете сделать что-то взломанное, как использовать метод webview stringByEvaluatingJavaScriptFromString, чтобы выполнить скрипт встроенного проигрывателя, чтобы он воспроизводился, но это звучит довольно хрупко, если YouTube когда-либо меняет свой API. –

Смежные вопросы