इस समस्या को 2 दिनों के लिए हल करने का प्रयास कर रहा है और मैं हार मानता हूं। मैं एक अनुकूलित एयरप्ले बटन को लागू करने की कोशिश कर रहा हूं (मुझे पृष्ठभूमि को बेकार करना है सफेद है और बटन काला होना चाहिए)। मैंने इंटरफ़ेसबिल्डर में एक दृश्य जोड़ा और इसके लिए mpVolumeView चुना। तब मैंने कनेक्शन बनाए और निम्नलिखित कोड लिखा;एयरप्ले सक्रिय होने पर एयरप्ले बटन को कस्टमाइज़ कैसे करें
viewDidLoad.. {
.....
[_volumeView setShowsVolumeSlider:NO];
for (UIButton *button in _volumeView.subviews) {
if ([button isKindOfClass:[UIButton class]]) {
[button setImage:[UIImage imageNamed:@"airplay_icon.png"] forState:UIControlStateNormal];
[button addObserver:self forKeyPath:@"alpha" options:NSKeyValueObservingOptionNew context:nil];
[button addTarget:self action:@selector(switchAirplayButton) forControlEvents:UIControlEventTouchUpInside];
[button sizeToFit];
}
}
[_volumeView sizeToFit];
}
-(void)switchAirplayButton {
for (UIButton *button in _volumeView.subviews) {
if ([button isKindOfClass:[UIButton class]]) {
NSLog(@"%d", _controlBar.player.airPlayVideoActive);
if(_controlBar.player.airPlayVideoActive) {
[button setImage:[UIImage imageNamed:@"airplay_icon_pressed.png"] forState:UIControlStateNormal];
} else [button setImage:[UIImage imageNamed:@"airplay_icon.png"] forState:UIControlStateNormal];
[button sizeToFit];
}
}
}
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if ([object isKindOfClass:[UIButton class]] && [[change valueForKey:NSKeyValueChangeNewKey] intValue] == 1) {
[(UIButton *)object setImage:[UIImage imageNamed:@"airplay_icon.png"] forState:UIControlStateNormal];
[(UIButton *)object sizeToFit];
}
}
"प्लेयर" AVPLayer पर आधारित एक सिंगलटन है। हालांकि, एयरप्ले सक्रिय होने पर यह जांचते समय हमेशा झूठा होता है। शायद यह सिर्फ ध्वनि का उपयोग कर imacuse im है, वीडियो नहीं।
तो मेरा सवाल यह है कि, मैं बटन को कैसे बदल सकता हूं ... जब एयरप्ले स्ट्रीमिंग हो रहा है (बस सेब को नीला बना रहा है) तो एक नारंगी एक (बस इंटरफ़ेस के बाकी मैच से मिलान करें) कहें। मैंने सब कुछ करने की कोशिश की है और यह बिल्कुल काम नहीं कर रहा है। क्रिप्या मेरि सहायता करे।
चिकुबा, आप इस मुद्दे को कैसे संभालेंगे, मुझे अपने वीओआईपी कॉल आईओएस ऐप में एक ही समस्या का सामना करना पड़ रहा है, क्या आप सुझाव दे सकते हैं? धन्यवाद! –