2010-05-08 42 views
9

我希望用户能够用滑块更改系统音量,并且我意识到唯一的方法是使用MPVolumeView。你如何实现MPVolumeView?

但我找不到任何示例代码,我试图实现的每个方法都不会显示出来。

那么实现MPVolumeView的最简单和正确的工作方式是什么?

+1

只需添加这是因为一些屏幕视图的子视图?应该做我想的工作。 – Joost 2010-05-08 21:06:11

+0

是的,但我该怎么做 - 放置它? – Emil 2010-05-08 21:16:15

回答

9

将其作为常规滑块放置,然后使用检查器将类设置为MPVolumeView。它仍然会在IB中显示为常规滑块,但在运行时,它将是MPVolumeView的一个实例,并且将具有必要的样式和行为。

+0

IB不会更改滑块的类别。 – Emil 2010-05-09 08:25:20

+14

迷人。它似乎不再被认为是“UISlider”的子类。作为一种解决方法,您可以创建一个通用的'UIView'并将其尺寸调整为20px(对于iPhone至少),然后将该类设置为'MPVolumeView'。一定要将背景设置为透明颜色。请注意,该类在模拟器中不起作用。 – warrenm 2010-05-09 15:31:09

+0

谢谢,它现在的作品,我只需要帮助把它放在一个UIAlertView现在.. http://stackoverflow.com/questions/2829234/mpvolumeview-in-a-uialertview – Emil 2010-05-15 19:31:49

3

使用此它会自动把它

mpVolumeViewParentView.backgroundColor = [UIColor clearColor]; 
MPVolumeView *myVolumeView = [[MPVolumeView alloc] initWithFrame: mpVolumeViewParentView.bounds]; 
[mpVolumeViewParentView addSubview: myVolumeView]; 
[myVolumeView release]; 
+0

当有人要求一个例子时,我没有看到从苹果文档复制代码的很多帮助... https://developer.apple.com/library/ios/documentation/MediaPlayer/Reference/MPVolumeView_Class/Reference/ Reference.html#// apple_ref/occ/instp/MPVolumeView/showsVolumeSlider – AlvaroSantisteban 2014-03-12 15:38:40

+2

这非常有帮助,因为您不应该发布链接而是发布解决方案。这个代码在十年内(或许)仍然会在这里,下个星期这个链接可能会失效。 – gnasher729 2015-05-11 18:52:37