我在我的应用中使用MPVolumeView
。我已自定义MPVolumeView
,但由于滑块的拇指图像未正确设置,因此存在问题。
答案 0 :(得分:0)
在MPVolumeView中,
它始终将音量值与您的设备硬件音量值一起使用。
如果您的硬件的最小音量为0.2,那么您的MPVolumeView设置滑块为0.2。 它使用0.0到1.0的体积值。
有关详细信息,请在此处下载示例代码,
您还可以自定义此卷视图
如果您需要,请告诉我。
更新:
此处还有一个有用的链接,MPVolumeView
答案 1 :(得分:0)
修改强>
事实证明,当使用MPVolumeView
时,iOS实际上并不垂直对齐您设置的图像与其他图像的设置方式相同。解决方案是创建一个稍微偏移的图像(如果需要说服图像更大,则可以始终使用alpha)并仅使用MPVolumeView
。这有点痛苦,但效果很好。通常,您希望新图像的偏移量为2-4像素。
要设置体积拇指图像,您应该使用:
setVolumeThumbImage:forState:
例如,如果您有一个名为myThumbImage.png
的图像和一个名为myVolumeView
的MPVolumeView,您可以使用:
[myVolumeView setVolumeThumbImage:
[UIImage imageNamed:@"myThumbImage"] forState:UIControlStateNormal];
这将找到项目中存在的任何名为myThumbImage.png
的图像,它将用于滑块。你应该注意这个图像是你想要的大小,25x25通常有点大,但不是一个糟糕的起点。
UISlider
会变暗并改变按钮的外观。要完成此操作,请创建另一个看起来如何的图像(这可能是相同的图像,只是更暗,或完全不同的图像),并将其设置为拇指突出显示的图像(这是当你点击它时会发生什么)。
您可以使用以下方式完成此操作:
[myVolumeView setVolumeThumbImage:
[UIImage imageNamed:@"VolumeThumbHighlighted"] forState:UIControlStateHighlighted];
将找到名为VolumeThumbHighlighted.png
的图像并将其用于此目的。
请注意,您还可以使用可伸缩图像设置左右轨道图像,其方法与典型的UISlider
图像略有不同。
您将使用此代码:
[myVolumeView setMinimumVolumeSliderImage:[[UIImage imageNamed:@"LeftTrackImage"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 4, 0, 0)]forState:UIControlStateNormal];
[myVolumeView setMaximumVolumeSliderImage:[[UIImage imageNamed:@"RightTrackImage"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 4)]forState:UIControlStateNormal];
这会将图像设置为边缘插入为4,您可以将其设置为您想要的任何值。
我不打算完全解释这一部分,因为它不是你问题的直接部分。