मेरे पास एक विंडो है जिसमें एनएसबीक्स नियंत्रण होता है। उस एनएसबीक्स में कई अन्य नियंत्रण हैं, (पॉपअप, टेक्स्ट फ़ील्ड्स, इत्यादि ...)परत समर्थित दृश्य और झिलमिलाहट नियंत्रण
मेरे पास दो अन्य एनएसबीक्स एक ही एनआईबी फ़ाइल में हैं जो नियंत्रण से भरे हुए हैं जिन्हें मैं निश्चित रूप से पहले के साथ स्वैप करना चाहता हूं शर्तेँ। मैं इस एक अच्छा पार फीका प्रभाव के साथ हो चाहते हैं, तो मैं निम्न कार्य करें:
NSWindowController के -awakeFromNib
विधि में:
[[self.myWindow contentView] setWantsLayer:YES];
मेरी विधि में जहाँ मैं विचारों मैं इस कोड का उपयोग कर रहा हूँ स्विचिंग :
[[[self.myWindow contentView] animator] replaceSubview:previousView with:newView];
यह ठीक काम करता है, विचारों की तरह ही मैं अपेक्षा करता हूं। समस्या यह है कि विचारों पर नियंत्रण कभी-कभी किसी स्पष्ट कारण के लिए गायब नहीं होता है। यह हमेशा एक ही विचार नहीं है (हालांकि एनएसपीओपअपबटन विशेष रूप से इसके लिए प्रवण प्रतीत होते हैं), और जब वे फोकस करते हैं तो वे आमतौर पर फिर से दिखाई देते हैं।
क्या मुझे सभी नियंत्रण परतों का भी समर्थन करना है?
अद्यतन: स्पष्ट समूह में एनीमेशन को लपेटने से कोई फर्क नहीं पड़ता। निब फ़ाइल में setWantsLayer को चालू करने से भी कोई फर्क नहीं पड़ता है, लेकिन दिलचस्प बात यह है कि जब मैंने ऐसा किया, तब तक एनएसपीओपबूटन गायब हो जाते हैं जब तक उनके दृश्य को क्लिक नहीं किया जाता है। NSPopupbuttons पर मैन्युअल रूप से परत सेट करने से कोई फर्क नहीं पड़ता।
ऐसा लगता है कि अन्य लोगों को इस समस्या पड़ा है, लेकिन मैं किसी भी समाधान तैनात नहीं मिल सकता है: एक दृश्य परत समर्थित है
http://www.cocoabuilder.com/archive/message/cocoa/2008/3/30/202691 http://www.cocoabuilder.com/archive/message/cocoa/2008/4/25/205134
मुझे भी इस समस्या को एनएसपीओपअपबटन और कैलियर के साथ मिला है और मुझे एक सभ्य समाधान नहीं मिला है। –