我正在构建一个需要MPVolumeView来控制音量的应用程序。在iOS 5.1之前,它可以完美工作,但是自从5.1更新以来,拇指图像不再垂直居中。我尝试了一些操作,例如更改想象尺寸,调整 View (和滑块)的大小,但似乎无济于事,拇指不再垂直居中。我获得居中拇指的唯一方法是使用默认的iOS拇指。
我尝试将UISlider添加到具有精确的最小,最大和拇指图像的另一个 View 中,并且该 View 居中。
这是MPVolumeView的代码:
MPVolumeView *volumeView;
volumeView = [[[MPVolumeView alloc] initWithFrame:volumeViewHolder.bounds] autorelease];
[volumeViewHolder addSubview:volumeView];
UIView *volumeViewSlider;
for (UIView *view in [volumeView subviews])
{
if ([[[view class] description] isEqualToString:@"MPVolumeSlider"])
{
volumeViewSlider = view;
}
}
[(UISlider *)volumeViewSlider setThumbImage:sliderHandleIcon forState:UIControlStateNormal];
[(UISlider *)volumeViewSlider setMinimumTrackImage:leftTrackImage forState:UIControlStateNormal];
[(UISlider *)volumeViewSlider setMaximumTrackImage:rightTrackImage forState:UIControlStateNormal];
volumeViewHolder只是一个153x33的UIView。我在屏幕截图中将拇指设为绿色。
最佳答案
也许是一个更好的解决方案:
使用更大的图像,底部带有透明边框。对于Retina显示器,应该在10像素左右。
关于ios - 自iOS 5.1以来,自定义MPVolumeView拇指图像未垂直居中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11230552/