2010-05-08 2 views
9

Я хочу, чтобы пользователь мог изменить системный том с помощью слайдера, и я понял, что единственный способ сделать это - с помощью MPVolumeView.Как вы реализуете MPVolumeView?

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

Итак, что является самым простым и правильным, рабочим способом реализации MPVolumeView?

+1

Просто добавьте его в качестве подвида некоторых экранного зрения? Должен делать работу, я полагаю. – Joost

+0

Да, но как мне это сделать - поместите его? – Emil

ответ

9

Поместите его как обычный слайдер, затем используйте инспектор, чтобы установить класс в MPVolumeView. Он по-прежнему будет отображаться как обычный слайдер в IB, но во время выполнения он будет экземпляром MPVolumeView и будет иметь необходимые стили и поведение.

+0

IB не изменит класс слайдера. – Emil

+14

Увлекательный. Похоже, что он больше не считается подклассом UISlider. В качестве обходного пути вы можете создать общий «UIView» и размер его 20px высотой (по крайней мере, для iPhone), а затем установите класс в «MPVolumeView». Обязательно установите для фона прозрачный цвет. Обратите внимание, что класс не работает в симуляторе. – warrenm

+0

Спасибо, сейчас он работает, мне нужна помощь, поместив его в UIAlertView сейчас. Http://stackoverflow.com/questions/2829234/mpvolumeview-in-a-uialertview – Emil

3

Используйте это будет автоматически получить его

mpVolumeViewParentView.backgroundColor = [UIColor clearColor]; 
MPVolumeView *myVolumeView = [[MPVolumeView alloc] initWithFrame: mpVolumeViewParentView.bounds]; 
[mpVolumeViewParentView addSubview: myVolumeView]; 
[myVolumeView release]; 
+0

Я не вижу большой помощи в копировании кода из документации Apple, когда кто-то просит пример ... https://developer.apple.com/library/ios/documentation/MediaPlayer/Reference/MPVolumeView_Class/Reference/ Reference.html # // apple_ref/occ/instp/MPVolumeView/showsVolumeSlider – AlvaroSantisteban

+2

Это очень полезно, так как вы не должны размещать ссылки, а решения. Этот код по-прежнему будет здесь через десять лет (возможно), ссылка может быть недействительной на следующей неделе. – gnasher729

Смежные вопросы