2014-09-23 47 views
-1

我正在学习开发iphone应用程序,我有一个简单的问题。如何在iOS上制作滑块音量控制器? Objective-C,iOS 7(或8),xcode 5(或6)

我想提出一个非常简单的应用程序,它允许用户设定设备上设置的音量屏幕使用滑块代替音量按钮。

这对经验丰富的开发人员来说可能相当明显,但我无法找到我正在寻找的答案。

我的问题是:

我怎样才能让这个滑块?

基本上我想这样做(图片:https://www.dropbox.com/s/b81bzdwyrab0ha7/slider.png?dl=0):

我曾经以为,我可以用一个普通UISlider但一些文件说,我需要使用一种叫做MPVolumeView。问题是,我找不到一个很好的教程,讲述如何使用这种明确性。

我在苹果文档中找到了这个链接,但我不明白它是如何工作的。 - http://developer.apple.com/iphone/library/documentation/MediaPlayer/Reference/MPVolumeView_Class/Reference/Reference.html 并且说明中显示:使用音量视图向用户显示用于设置系统音频输出音量的滑块控件以及用于选择音频输出路径的按钮。第一次显示时,滑块的位置反映当前系统音频输出音量。当用户拖动滑块时,更改会更新音量。如果用户在播放声音时按下设备音量按钮,则滑块会移动以反映新音量。

这正是我想要的,但我不明白它给人的例子。如果你能告诉我如何使这个滑块工作,即使它是一个新的单视图项目,我会非常感激。

另外我知道这种方法还会在音量滑块旁边创建一个airPlay按钮。有没有办法删除这个按钮? (我的应用程序是一个简单的生产力应用程序,所以我只想要滑块,而不是airplay按钮)。

我也明白,这不会在模拟器上工作。我应该怎么知道,这将工作,而不必在实际设备上测试它(我还没有注册为开发人员)?

另外,我只知道的Objective-C,不迅速。如果你可以请不要在你的答案中使用迅速,我会apreaciate。

非常感谢你的帮助。

PD:英语不是我的第一语言。对不起,我犯了任何错误。

回答

1

编写这种滑块的过程非常简单,请查看UISliderhttps://developer.apple.com/library/ios/documentation/UIKit/Reference/UISlider_Class/),然后使用滑块的浮点值设置音量。

如果你不想写自己的滑块,看在GitHub(github.com)为你做到这一点的控制。在快速搜索后,我发现这个调整volumeUISlider子类。

+0

谢谢!我会检查出来。这是否意味着我可以使用常规UISlider来控制系统音量?如果我这样做,苹果不会批准我的应用程序?再次谢谢你。 – 2014-09-25 05:41:55

2

MPVolumeView class旨在让你做到这一点。它在MediaPlayer中。框架,所以添加到您的应用程序,使事情正确构建。

您可以创建它并使其可视化,以便实例化您现在可能知道的UIView的任何其他子类。

您可以通过将“showsRoutingButton”属性设置为false来禁用路由按钮。

“我应该怎么知道这样做不会在实际设备上进行测试?”

从iOS 2.0开始,它就已经存在了,并被用于无数的应用程序中?