मैं एक छोटे से इस अजीब घटना द्वारा स्टम्प्ड रहा हूँ के माध्यम से खेला जा रहा के बाद से लागू होने वाली:AVAudioPlayer कई लूप के केवल एक बार
मैं एक UIButton, जो एक बार उपयोग किया या तो एक ऑडियो प्लेयर के लिए एक पाश सेट है, या यह रीसेट करता है 0 तक (कोई लूप नहीं)। यहाँ विधि है -
-(void)changeLoopValueForPlay:(int)tag toValue:(bool)value{
AVAudioPlayer *av = [self.playerArray objectAtIndex:tag];
if(value){
[av setNumberOfLoops:100];
[av prepareToPlay];
}
else{
[av setNumberOfLoops:0];
}
}
अब किसी कारण से
, पाश केवल तभी प्रभावी होगी खिलाड़ी के बाद ऑडियो एक समय के माध्यम से खेलता है, जिसका अर्थ है कि पाशन मूल्य तुरंत प्रभावित नहीं ले करता है, लेकिन "numberOfLoops" जब खिलाड़ी खेलना शुरू कर देता है तो खिलाड़ी का मूल्य वास्तव में 100 पर सेट होता है। मुझे लगता है कि इस खिलाड़ी के प्रारंभिकरण या लोडिंग के साथ कुछ करने के लिए है, लेकिन मैं इसे दो नाटकों के बीच फिर से शुरू नहीं करता (एक लूप के बिना, दूसरा)। कुछ पता है कि ऐसा क्यों हो रहा है? यदि आप कोई अन्य कोड देखना चाहते हैं तो कृपया मुझे बताएं।