ios 如何在AVPictureInPictureController的浮动窗口中隐藏系统控件?

js4nwp54  于 2023-04-22  发布在  iOS
关注(0)|答案(3)|浏览(489)

我想在iOS14上隐藏这些系统控件:

我能做什么吗?

dbf7pr2w

dbf7pr2w1#

您可以通过以下方式至少隐藏搜索按钮:

vc.requiresLinearPlayback = true

其中vc为您的AVPictureInPictureController示例。
如果你已经找到了隐藏播放按钮的方法,请分享。

t1qtbnec

t1qtbnec2#

你可以用KVC来实现:

1.隐藏前进和后退按钮:

斯威夫特:

pipController.setValue(1, forKey: "requiresLinearPlayback")

Objective-C:

[self.pipController setValue:[NSNumber numberWithInt:1] forKey:@"requiresLinearPlayback"]

2.隐藏进度条、播放按钮、前进按钮和后退按钮:

斯威夫特:

pipController.setValue(1, forKey: "controlsStyle")

Objective-C:

[self.pipController setValue:[NSNumber numberWithInt:1] forKey:@"controlsStyle"];

3.隐藏pip上的所有控件:

注意:仅限iOS 16 +

斯威夫特:

pipController.setValue(2, forKey: "controlsStyle")

Objective-C:

[self.pipController setValue:[NSNumber numberWithInt:2] forKey:@"controlsStyle"];

有关自定义画中画的更多详细信息,您可以在此处查看我的存储库:
https://github.com/CaiWanFeng/PiP

gblwokeq

gblwokeq3#

if #available(iOS 14.0, *) {
            //Hide the seekbar
            pipController?.requiresLinearPlayback = true
        } else {
            // Fallback on earlier versions
        }
        
        //Hide the play/pause controls
        pipController?.setValue(1, forKey: "controlsStyle")

相关问题