ios - 如何在 swift 中在 VLC 播放器上方添加全屏按钮
问题描述
我想在 VLC 视频播放器顶部添加按钮全屏。我尝试了这段代码,但它不起作用:
class VideoScreen: UIViewController{
@IBOutlet weak var playerView: UIView!
@IBOutlet weak var indicator: UIActivityIndicatorView!
@IBOutlet weak var btnFullSrc: UIButton!
@IBOutlet weak var playerViewHeight: NSLayoutConstraint!
var b : Bool = false;
let player: VLCMediaPlayer = {
let p = VLCMediaPlayer(options: ["--extraintf="])
return p!
}();
override func viewDidLoad() {
title = "Xem camera"
self.initPlayer()
}
override func viewDidDisappear(_ animated: Bool) {
player.stop()
}
func initPlayer() {
let streamUrl = URL(string: rstpFactoryUrl)
let media = VLCMedia(url: streamUrl)
player.media = media
player.delegate = self
player.drawable = playerView
player.play()
(player.drawable as! UIView).bringSubview(toFront: btnFullSrc)
}
}
这是我的故事板用户界面:
当视频正在运行时,“btnFullSrc”可能会隐藏,视频帧总是在顶部。任何帮助在这里谢谢你
更新:我将代码更改为
self.view.bringSubview(toFront: btnFullSrc)
但仍然无法正常工作
解决方案
您的按钮是视频视图的子视图。VLCKit 不支持此功能。您需要使按钮处于相同的层次结构级别或更高级别,以使其显示在视频顶部。
推荐阅读
- java - 资产文件夹 HTML 文件中的 AdMob 横幅广告
- typescript - 类型 '
(array: T[], pred: (x: T) => boolean, index: number) => void' 不能分配给类型 '() => void' - swift - AVPlayer:如何“播放”图像而不是视频?
- java - 我正在使用带有 Ajax 的 SpringBoot 和 Jquery 编写一个 crud 应用程序。我得到以下异常
- linux - 在 Linux 上使用 Curl 的 Azure 存储表 API REST
- r - CSV 未在 R 中正确导入
- python - 在jupyter notebook上,如何在执行完所有cell后使用代码释放运行内存,无需手动点击重启按钮
- python - Pytorch 1.5 优化器导致 .step() 中的就地操作(可能的错误)
- algorithm - 算法复杂度表示法
- reactjs - componentWillMount 用于反应功能组件?