मैं एक आईओएस 5 आईपैड ऐप के लिए पॉपओवर पेश करने के लिए UIStoryboardPopoverSegue
का उपयोग कर रहा हूं। Segue बहुत अच्छा काम करता है, लेकिन ऐसा लगता है कि टूलबार में पॉपओवर नियंत्रक के लिए एक पासथ्रू व्यू है, इसलिए यदि आप बटन दबाते रहते हैं, तो अधिक पॉपओवर दिखाई देते हैं। चूंकि मैं UIPopoverController
का ट्रैक नहीं बना रहा हूं और खुद को ट्रैक कर रहा हूं (जैसे स्टोरीबोर्ड इसे कर रहा है) बटन को फिर से स्पर्श होने पर मैं इसे बर्खास्त नहीं कर सकता। क्या कोई और इस में चला है? मेरे पास ऐप्पल के साथ एक बग खुला है लेकिन उन्होंने जवाब नहीं दिया है।UIStoryboardPopoverSegue बटन स्पर्श पर एकाधिक विंडो खोलने
संपादित करें: मैंने इसे नीचे दिए गए उत्तर का उपयोग करके हल किया है। यहां कोड है जिसका उपयोग मैंने समाप्त किया था। currentPopover
मेरे व्यू कंट्रोलर क्लास में __weak
इवर है, इसलिए जब नियंत्रक किया जाता है तो यह स्वचालित रूप से शून्य हो जाएगा।
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue isKindOfClass:[UIStoryboardPopoverSegue class]]){
// Dismiss current popover, set new popover
[currentPopover dismissPopoverAnimated:YES];
currentPopover = [(UIStoryboardPopoverSegue *)segue popoverController];
}
}
आपके संपादन के लिए धन्यवाद, समस्या का एक सुंदर समाधान! – shapecatcher