2015-06-22 8 views
11

का उपयोग करते समय अजीब चेतावनी देता है। मैं अपने स्टूडियोबोर्ड पर एक कस्टम स्विफ्ट क्लास के साथ अपने UIButton को उपclass करने की कोशिश कर रहा हूं जो कस्टम हैम्बर्गर बटन के रूप में बटन दिखाना चाहिए।आईबी डिज़ाइनबल्स कस्टम क्लास

मुझे यह चेतावनी मिल रही है और इंटरफ़ेस बिल्डर में हैम्बर्गर बटन प्रदान नहीं किया जा रहा है, हालांकि यह अंतःक्रियात्मक रूप से काम करेगा।

कस्टम क्लास को एनटीएमएम्बर्गर बटन कहा जाता है, मुझे नहीं पता कि कक्षाओं के नाम से पहले वर्णों पर स्ट्रिंग क्यों दिखाई दे रही है।

आईबी Designables: कस्टम वर्ग के साथ वस्तु के लिए वर्ग UIButton का उपयोग क्योंकि वर्ग _TtC6CProjectName17NTHamburgerButton मौजूद नहीं है।

+0

हमें कुछ कोड दिखाएं –

+0

इसी तरह की समस्याएं यहां दी गई हैं: http://stackoverflow.com/questions/26674111/ib-designable-ibinspectable-interface-builder-does-not-update। –

+0

ऐसा लगता है कि यह अब काम कर रहा है क्योंकि मैंने कस्टम क्लास में कुछ आईबीआईस्पेक्टेबल विशेषताओं को जोड़ा है, मुझे उन्हें निरीक्षण करने की आवश्यकता नहीं थी, लेकिन कम से कम यह इंटरफ़ेस बिल्डर को – Codermonk

उत्तर

6

यह प्रश्न फिर से कुछ ध्यान देने लगता है इसलिए मैं एक अद्यतन दूंगा।

यह समस्या ओबीजे-सी और स्विफ्ट मिश्रित परियोजना में मौजूद थी। तो प्रश्न में कक्षा एक स्विफ्ट कक्षा थी।

जब Obj सी में स्विफ्ट कक्षाएं उपलब्ध बनाने, आप निम्न संरचना

@objc(NTHamburgerButton) public class NTHamburgerButton : UIButton {} 

अन्यथा अपने {परियोजना नाम} -Swift.h फ़ाइल Xcode बनाता है कि आप यह है कि यह इन उत्पन्न करता देखेंगे में उपयोग कर सकते हैं सवाल से अद्वितीय वर्ग नाम।

यहां एकमात्र असली मुद्दा यह था कि एनटीएमएम्बर्गरबटन.विफ्ट फ़ाइल उस उत्पाद में शामिल नहीं की जा रही थी जिसे मैं देख रहा था, लेकिन अगर मैंने लक्ष्य को बदल दिया, तो यह ठीक काम करता था। इस प्रकार अस्थायी मुद्दा।

4

मैं एक ही समस्या का सामना किया है, और मैं अन्य प्रश्न से एक जवाब मिला: enter link description here

मैं सिर्फ ताज़ा सभी दृश्य enter image description here

यह मेरे लिए काम करता है। उम्मीद है कि यह भी आपकी मदद करता है।

2

मेरे लिए कोडमोंक और विशेष दोनों समाधान समाधान आवश्यक थे, लेकिन पर्याप्त नहीं थे।

मैं भी इंटरफ़ेस बिल्डर में लक्ष्य से इनहेरिट को चालू करने के लिए किया था:

enter image description here

यह मेरे लिए चाल किया था।

+0

के रूप में काम करता है, मैंने कोकपोड में आईबी डिज़ाइन करने योग्य क्लास आयात किया है, और यह एक चेतावनी के कारण स्विफ्ट हेडर के साथ सिर्फ एक ओबीजेसी कक्षा थी, और इसे काम करने के लिए मुझे इसे काम करने के लिए "मॉड्यूल" कॉम्बो में आयातित कक्षा का चयन करना पड़ा –

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