我正在构建一个需要 MPVolumeView 来控制音量的应用程序。它在 iOS 5.1 之前运行良好,但自 5.1 更新以来,拇指图像不再垂直居中。我尝试了一些方法,例如更改想象尺寸、调整 View (和 slider )的大小,但似乎没有任何效果,拇指不再垂直居中。我获得居中拇指的唯一方法是使用默认的 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 显示器,应该在 10px 左右。
关于ios - 自 iOS 5.1 以来自定义 MPVolumeView 缩略图不垂直居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11230552/