2014-10-01 14 views
7

मैं NSPopover का उपयोग कर रहा हूं, और जब मैं सिस्टम डॉक रंग को अंधेरे में बदलता हूं (योसामेट नई सुविधा) मेरे दृश्य में कुछ तत्व उनके रंग को उलटा करते हैं।Yosemite अंधेरे रंग में NSPopover रंग उलटा

उदाहरण के लिए कुछ लेबल काले से भूरे रंग में बदलते हैं, या पाठ फ़ील्ड पृष्ठभूमि में सफेद से काले रंग में परिवर्तन होते हैं। और अगर मुझे सफेद पृष्ठभूमि के साथ एक दृश्य है तो अब धुंधले अंधेरे प्रभाव में बदल गया है।

तो दो सवाल:

  1. मैं इस व्यवहार को रद्द करने और यूआई नियमित मोड में की तरह काम करने के लिए मजबूर कर सकते हैं?

  2. क्या कोई नियम है जहां तत्व उनके रंग को उलटा करते हैं?

क्योंकि ऐसा लगता है कि कुछ तत्व बदलते हैं और कुछ नहीं।

यह Yosemite नियमित मोड में मेरी अनुप्रयोग है:

enter image description here

और यह Yosemite अंधेरे मोड में है:

enter image description here

उत्तर

2

ऐसा करने के तरीके हैं, हालांकि मैं इसे गले लगाने की सिफारिश करता हूं। यह ठोस रूप से दस्तावेज नहीं है कि क्या बदलेगा और कैसे। लेकिन अवलोकन आपको दिखाएगा कि क्या करना है। मुख्य रूप से यह आपको चुनने के विपरीत करने की आवश्यकता है। ऑप्टिंग में एपकिट इंटरफ़ेस तत्वों का उपयोग करना है, साथ ही साथ सिस्टम रंगों के रूप में प्रदान किए गए एनएससीओलर नामों का उपयोग करना और NSVisualEffectView का उपयोग करना है। इसका मतलब है कि स्पष्ट रूप से ऑप्ट आउट करने के लिए आपको चारों ओर जाने और मूल रूप से विचारों को अनुकूलित करने की आवश्यकता है और इसका मतलब है कि स्पष्ट रंगों को सेट करना और कभी-कभी उप-वर्गीकरण करना। बॉक्स के बाहर एचयूडी शैली पॉपओवर और पैनलों का चयन किया जाएगा।

+0

पॉपओवर अनुकूलन में सीमित हो सकते हैं । यदि उपयोगकर्ता Accessibilty वरीयताओं में पारदर्शिता को कम करता है तो आप अंतर भी देखेंगे। – uchuugaka

+0

यह व्यवहार कब होता है (रंग उलटा हुआ) होता है? अंधेरे मोड में जाने पर किसी भी विंडो में कुछ यूआई तत्व के लिए ऐसा होगा? या केवल जब पॉपओवर में? – Mario

+0

डार्क मोड। ऐसे एनएसएनोटिफिकेशन हैं जिन्हें आप देख सकते हैं और अभिगम्यता में परिवर्तन कर सकते हैं। नए लोगों को केवल 1010 या हेडर में ऐपकिट रिलीज नोट्स में ही नोट किया जा सकता है। मैं कौन सा हेडर भूल जाता हूँ। – uchuugaka

10

यह एक पुस्तकालय आपको लगता है कि प्रयोग कर रहे हैं हो सकता है पैदा यह व्यवहार। मैंने अभी एक नई परियोजना पर परीक्षण किया और मैं एनएसपीओवर ब्लैक नहीं कर सका, इससे कोई फर्क नहीं पड़ता कि मैंने कितनी मेहनत की।

आप किस पुस्तकालय का उपयोग कर रहे हैं? आपने अपना एनएसपीओवर कैसे स्थापित किया?

शायद आप दृश्य की उपस्थिति संपत्ति को बदलने का प्रयास कर सकते हैं?

view.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];

NSView संपत्ति appearance क्योंकि यह NSAppearanceCustomization के अनुरूप है।

NSAppearance भी देखें।

------------------------

मिले समाधान:

self.popover.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua]; 

परिणाम:

+0

मैंने एक फोटो जोड़ा, जैसा कि आप देख सकते हैं, तत्व पृष्ठभूमि काला हो जाती है। – Mario

+0

मैंने योसैमेट डार्क मोड – Mario

+0

चुनने के बिना अपने ऐप की एक और छवि जोड़ा, मुझे इसे काम करने के लिए मिला, इसलिए अद्यतन उत्तर की जांच करें। – inket

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