Я создаю приложение, которому нужен 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 — это просто UIView размером 153x33. Я поставил большой палец в зеленый на скриншоте.