iOS5 では、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];
videoView = [[UIWebView alloc] initWithFrame:frame];
[videoView loadHTMLString:html baseURL:nil];
[self.view addSubview:videoView];
}
呼び出し元:
[self embedYouTube:@"http://www.youtube.com/v/PqtUSSdf8b4" frame:CGRectMake(0, 0, self.view.frame.size.width, 100)];
そして、「完了」ボタンが付いた標準のYoutubeフレームがあります。完了ボタンを押すと、ルート VC にリダイレクトされます。なぜ?どうすれば VC にアクセスできますか (私が呼び出しているときの VC) ?
さらに重要なのは、「完了ボタン」イベントをキャッチする方法です。
編集: MainVC と DetailVC があります。MainVC は DetailVC を として呼び出しますModalViewController
。そこから、このembedYouTube
メソッドを呼び出します。この画面で完了を押しているとき:
DetailVC ではなく MainVC に戻ります。なんで?このイベントをキャッチするには?
編集: iOS 6 は黒い背景のみを表示します - 何も表示しません。なんで?