我正在构建一个需要 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];
volumeViewHolder 只是一个 153x33 的 UIView。我在屏幕截图中将拇指放在绿色中。