自iOS 5.1以来,自定义MPVolumeView Thumb图像不是垂直居中的

Hul*_*ASH 7 uislider ios mpvolumeview ios5.1

我正在构建一个需要MPVolumeView来控制音量的应用程序.它在iOS 5.1之前完美运行,但自5.1更新以来,拇指图像不再垂直居中.我尝试了一些改变想象尺寸,调整视图大小(和滑块)的东西,但似乎没有任何效果,拇指不再垂直居中.我得到一个中心拇指的唯一方法是,如果我使用默认的iOS.

我尝试将UISlider添加到另一个视图,其中包含精确的最小,最大和拇指图像,并且其中心位置正常.

这是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];
Run Code Online (Sandbox Code Playgroud)

volumeViewHolder只是一个153x33的UIView.我在屏幕截图中将拇指放在绿色中. 在此输入图像描述

Nil*_*z11 4

也许有更好的解决方案:

使用底部带有透明边框的更大图像。对于 Retina 显示屏,应约为 10 像素。