Проблемы с настройкой MPVolumeView

Я работаю над приложением для радио, и мне нужно настроить цвета трекера громкости.

    myVolumeView = [[MPVolumeView alloc] initWithFrame: CGRectMake(26, 292, 268, 23)];

    [self.view addSubview: myVolumeView];
    for (id current in myVolumeView.subviews) {
        if ([current isKindOfClass:[UISlider class]]) {
            UISlider *volumeSlider = (UISlider *)current;
            volumeSlider.minimumTrackTintColor = [UIColor redColor];
            volumeSlider.maximumTrackTintColor = [UIColor lightGrayColor];
            //[volumeSlider setThumbImage:[UIImage imageNamed:@"volTrack.png"] forState:UIControlStateNormal];
        }
    }

Если я запускаю такой код, возникает странная ошибка: broken image

Но если я закомментирую максимальный цвет дорожки, он сработает (хотя и без настроенного цвета). введите здесь описание изображения

Любые средства для этого? у меня стоит 7.1.1


person George L    schedule 03.05.2014    source источник
comment
Я столкнулся с этой же проблемой, пытаясь настроить элемент управления MPVolume. Удалось ли вам найти решение для этого? Благодарю вас!   -  person Derek Lee    schedule 03.02.2015
comment
Оказывается, был задан тот же вопрос, и я нашел решение по следующей ссылке SO полезным: stackoverflow.com/questions/22345668/   -  person Derek Lee    schedule 03.02.2015


Ответы (1)


Давай попробуем:

if ([current isKindOfClass:[UISlider class]]) {
     UISlider *volumeSlider = (UISlider *)current;
     volumeSlider.minimumTrackTintColor = [UIColor redColor];
     volumeSlider.maximumTrackTintColor = [UIColor lightGrayColor];
     [volumeSlider setThumbImage:[UIImage imageNamed:@"volTrack.png"] forState:UIControlStateNormal];

     // I think you should set these properties:
     [slider setMinimumTrackImage:[[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:filled ofType:@"png" inDirectory:@"MDAudioPlayer.bundle"]]stretchableImageWithLeftCapWidth:5 topCapHeight:3] forState:UIControlStateNormal];
     [slider setMaximumTrackImage:[[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:empty ofType:@"png" inDirectory:@"MDAudioPlayer.bundle"]] stretchableImageWithLeftCapWidth:5 topCapHeight:3] forState:UIControlStateNormal];
}
person nmh    schedule 04.05.2014