Пользовательское изображение миниатюры MPVolumeView не центрировано по вертикали, начиная с iOS 5.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];

volumeViewHolder — это просто UIView размером 153x33. Я поставил большой палец зеленым на скриншоте. enter image description here

7
задан Hulk_SMASH 27 June 2012 в 16:05
поделиться