2016-03-19 8 views
2

上で動作します:は、私はユーチューブの動画を表示するには、次のコードを使用していシミュレータ

コードはしかし、それはロードに失敗し、実際のデバイス上で、シミュレータ上で完全に正常に動作し
webViewVideo.hidden = false 

webViewVideo.allowsInlineMediaPlayback = true 
webViewVideo.mediaPlaybackRequiresUserAction = false 

let youtubeIfarme = "<html><body><iframe src=\"http://www.youtube.com/embed/\(youtubeId)?playsinline=1\" width=\"\(CGRectGetWidth(loadedView.frame) - CGFloat(16))\" height=\"\(CGRectGetHeight(webViewVideo.frame))\" frameborder=\"0\" allowfullscreen></iframe></body></html>" 

webViewVideo.loadHTMLString(youtubeIfarme, baseURL: NSBundle.mainBundle().bundleURL) 

。私は、アプリのトランスポート・セキュリティを次のように定義される:

transport security

奇妙なことは、私はiOS Helper libraryをダウンロードしたが、結果は同じであるということです。さらに、デリゲートメソッドは呼び出されません。彼らのgithubページには、オープンな問題がたくさんあるので、私はそれが私の最良の選択肢ではないと思います。

ご協力いただければ幸いです。私は私のhtmlページは、シミュレータ上のUIWebView内でどのように見えるかをデバッグするために管理

EDIT

(サファリを通してそれを接続することにより、開発):

<html><head></head><body><iframe src="http://www.youtube.com/embed/KIiUqfxFttM?playsinline=1" width="359.0" height="350.0" frameborder="0" allowfullscreen=""></iframe></body></html> 

答えて

0

viewForHeaderInSection

heightForHeaderInSection

を私が唯一つのセクションので、私は私が何を知っていないだけsection == 0場合が値を返した:問題は、私は必要なデリゲートを実装することにより、UITableViewHeader内部の映像を表示するために使用したことでしたこの問題はまさに原因ですが、おそらくこのメソッドを複数回呼び出すとこの問題が発生します。私がしたのは、単にUIWebViewの初期化をviewWillAppearの中に移動し、それをtableViewHeaderViewと設定することでした。だから私は今それを一度しか設定しておらず、問題はなくなっています:

override func viewWillAppear(animated: Bool) { 
    super.viewWillAppear(animated) 

    dispatch_once(&token) { 
     self.initHeader() 
    } 
} 
0

あなたのシミュレータとデバイスのOSのバージョンは何ですか?同じOSバージョンですか?異なるUIWebViewがエラーを引き起こすことがあります。私は自分の質問に答える必要があります

チェックこのも

Playing youtube using <iframe> fails on iPhone, but still works for iPad under iOS 6 (both work fine on iOS 5)

+0

残念なことに残念です。デバイスはiOS 9.2.1のiphone 6、シミュレータは9.2 –

関連する問題