2012-02-23 14 views
7

मैं इस स्ट्रीमर (https://github.com/DigitalDJ/AudioStreamer) मेरे ऐप के अंदर लागू कर दिया है और यह शानदार चलाता है, लेकिन यह, मात्रा पर नियंत्रण लागू किया नहीं है किसी को भी सुझाव दिए गए कैसे मात्रा स्लाइड या कुछ और के साथ आरंभ करने के लिए है?iOS: तक पहुँचना डिवाइस हार्डवेयर ऑडियो वॉल्यूम नियंत्रण

मैं कुछ इसी तरह के सवाल गर्त देख रहा था:

जव करने के लिए इन उपयोगी के किसी भी नहीं मिला मेरे प्रश्न के अनुसार, वॉल्यूम (ऊपर/नीचे) कैसे बदलें और निश्चित रूप से इसे किसी प्रकार के नियंत्रण में हुक करें यानी स्लाइडर, किसी भी मदद की सराहना की जाती है

उत्तर

9

आप MPVolumeView का उपयोग कर सकते हैं। यह आपको एक UISlider कि मात्रा को नियंत्रित करता है देता है।

21

सुनिश्चित करें कि आप अपनी परियोजना के लिए MediaPlayer ढांचे को जोड़ने बनाने

आप इस मामले में में स्लाइडर डाल करने के लिए "viewVolume"

जानकारी अपने ज फ़ाइल में एक दृश्य निर्धारित करने के लिए है: इस अभ्यस्त काम में केवल एक असली डिवाइस पर एक सिम्युलेटर।

#import <MediaPlayer/MediaPlayer.h> 

- (void)showTheVolumeSlider { 

    MPVolumeView *volumeViewSlider = [[MPVolumeView alloc] initWithFrame:viewVolume.bounds] ; 
    [viewVolume addSubview:volumeViewSlider]; 
    [volumeViewSlider sizeToFit]; 

} 

यह कोड एआरसी का उपयोग कर रहा है।

इस कोड Wil भी काम करते हैं:

musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; 
    musicPlayer.volume = slider.value; 

लेकिन आप इस उपयोग करना चाहते हैं तो आप एक अन्य जगह

से निकाला जाता है एक प्रणाली है कि डिवाइस की मात्रा के रूप स्लाइडर अद्यतन करता है बनाने के लिए है इस खंड को अद्यतन करने के लिए काम wil, लेकिन मैं अगर यह सबसे अच्छा तरीका है

timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(updateSound) userInfo:nil repeats:YES]; 

इस UISlider अद्यतन करने के लिए नहीं जानता:

- (void)updateSound { 

    musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; 
    slider.value = musicPlayer.volume; 
    // value from 0.0 to 1.0 

} 
+0

मैं जानता हूँ कि यह एक पुराने सवाल है, लेकिन आप के आसपास रहे हैं बंद मौका पर, वहाँ MPVolumeView होने के लिए एक मौजूदा UISlider स्थापित करने के लिए किसी भी तरह से है? –

+0

रूबेन मार्टिनेज जूनियर - दूसरा कोड ब्लॉक का उपयोग करें, लेकिन यह आप उपरिशायी ही एक अपने डिवाइस के किनारे पर मात्रा controles का उपयोग कर, iirc मात्रा के रूप में प्रतिक्रिया देता है। – Floris497

संबंधित मुद्दे