2017-03-20 13 views
8

में एक कस्टम टच बार का उपयोग नहीं कर सकता हूं मेरे पास एक ऐप है जो स्टेटस बार ऐप (Info.plist "एप्लिकेशन में एजेंट (UIElement) = YES") जैसा प्रदर्शित होता है।मैं स्टेटस बार मैकोज़ ऐप

मैंने इंटरफ़ेस बिल्डर के साथ एक टचबार जोड़ा है और मैंने इसमें कुछ टच बार बटन आइटम जोड़े हैं। समस्या यह है कि कस्टम टच बार नहीं दिखता है।

कस्टम टच बार दिखाने के लिए मुझे मुख्य विंडो नियंत्रक विंडो को प्रारंभिक नियंत्रक के रूप में सही करने की आवश्यकता है, दुर्भाग्यवश, ऐसा करके, ऐप मेनू की पॉपअप विंडो की तुलना में एक ही सामग्री के साथ एक अलग विंडो भी बोता है आइटम।

क्या स्टेटस बार मैकोज़ ऐप के लिए कस्टम टच बार को लागू करने का कोई तरीका है?

enter image description here

+0

क्या आपको कभी समाधान मिला है? – dvdblk

+0

हाय dvdblk, अभी तक, दुर्भाग्य से नहीं। – Cue

उत्तर

0

आप अपने NSApplication को touchBar बताए की कोशिश की है? आपके पास आईबी टचबार के साथ आवंटित आईबीओलेट होना चाहिए और रनटाइम पर इसे असाइन करना चाहिए।

@property (weak) IBOutlet NSTouchBar *testTouchBar; 
[...] 
[NSApplication sharedApplication].touchBar = _testTouchBar; 
+0

हाय साइबेक, मैं एक नौसिखिया हूं और उद्देश्य-सी नहीं जानता, क्या आप इसे स्विफ्ट में अनुवाद करने में मेरी मदद कर सकते हैं? विंडो कंट्रोलर में लगाया गया आउटलेट काम करता है लेकिन दूसरा कथन मैंने विंडो में डाला हैडलोड(): "चलो टी: एनएसएपीप्लिकेशन = application.shared.mainTouchBar' एक त्रुटि देता है (बूल सदस्य साझा नहीं किया गया है)। निश्चित रूप से मैंने इसे स्विफ्ट में गलत बताया ... – Cue

+0

@Tel वास्तव में मैं भी शुरुआती हूं क्योंकि मैं obj-c सीख रहा हूं। लेकिन मुझे आशा है कि स्विफ्ट में कोड इस तरह दिखेगा: ऐप = एनएसएपीप्लिकेशंस.श्रेड(); ऐप.touchबार = _testTouchBar; ऐसा लगता है कि आपने स्विफ्ट में साझा किए जाने के बजाय साझा एप्लिकेशन का उपयोग किया था। और यह एक तरीका है। बाकी एक ही होगा। – cybek

+0

हाय साइबेक, मैंने इसे कार्यान्वित किया, लेकिन ऐसा लगता है कि यह काम नहीं कर रहा है। धन्यवाद – Cue

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