我希望用户能够使用滑块更改系统音量,我意识到唯一的方法是使用MPVolumeView。
但我找不到任何示例代码,我试图实现的每个方法都不会出现。
那么实现MPVolumeView的最简单,最正确,最有效的方法是什么?
答案 0 :(得分:9)
将其作为常规滑块放置,然后使用检查器将类设置为MPVolumeView
。它仍将在IB中显示为常规滑块,但在运行时,它将是MPVolumeView
的实例,并且将具有必要的样式和行为。
答案 1 :(得分:3)
使用此功能会自动获取
mpVolumeViewParentView.backgroundColor = [UIColor clearColor];
MPVolumeView *myVolumeView = [[MPVolumeView alloc] initWithFrame: mpVolumeViewParentView.bounds];
[mpVolumeViewParentView addSubview: myVolumeView];
[myVolumeView release];
答案 2 :(得分:1)
在iOS 13中,这已更改。在IB中添加其类别设置为MPVolumeView
的滑块不再起作用。因此,已接受的答案不再起作用。
如Apple文档所述,正确的方法是在IB中使用UIView
,然后在代码中将MPVolumeView
添加为子视图。
在Swift中是这样的:
// myVolumeViewParentView is the UIView you put in IB
let myVolumeView = MPVolumeView(frame: myVolumeViewParentView.bounds)
myVolumeViewParentView.addSubview(myVolumeView)
此方法也适用于iOS 12。