xcode Swift 3中<iframe> </iframe>中视频顶部和左侧的额外空间

时间:2017-09-22 05:35:34

标签: swift xcode iframe youtube uiwebview

嘿伙计,所以我有点困惑为什么我试图嵌入的每个视频在iframe的顶部和左侧都有一个白色/空白边框。我的目标是让视频填满屏幕的宽度。看看我的代码和截图,看看你是否知道这个问题。我觉得我错过了一些简单的事情。任何帮助表示赞赏。

func getVideo(videoID:String, viewID:UIWebView) {
    let videoCode = videoID
    let youtubeURL = "https://www.youtube.com/embed/"
    let view = viewID


    view.allowsInlineMediaPlayback = true
    view.allowsPictureInPictureMediaPlayback = true
    view.loadHTMLString("<iframe width=\"375\" height=\"211\" src=\"\(youtubeURL)\(videoCode)?&playsInLine=1\" frameborder=\"0\" allowfullscreen></iframe>", baseURL: nil)
}

override func viewDidLoad() {
    getVideo(videoID:"h8SklPi-mms", viewID:videoView)
    super.viewDidLoad()
}

main.storyboard

Simulator

1 个答案:

答案 0 :(得分:0)

找到了一个解决方案,我想我会为任何有相同或类似问题的人分享。

let htmlStyle = "<style> iframe { margin: 0px !important; padding: 0px !important; border: 0px !important; } html, body { margin: 0px !important; padding: 0px !important; border: 0px !important; width: 100%; height: 100%; } </style>"
//Seems to be all the stuff that removes space etc.


viewSelector!.loadHTMLString("<html><head><style>\(htmlStyle)</style></head><body><iframe width='\(viewSelector!.frame.width)' height='\(viewSelector!.frame.height)' src='https://www.youtube.com/embed/\(videoCode)?&playsinline=1' frameborder='0' allowfullscreen></iframe></body></html>", baseURL: nil)

viewSelector是用于标识正在使用的UIWebView的变量。

videoCode是由文本字段导入的代码,用于确定正在播放的视频。

希望我能帮忙!