2015-09-17 7 views
5

के लिए चले मैं एक Swift वर्ग इस तरह की घोषणा की थी।@objc त्रुटि जब स्विफ्ट 2

Only classes that inherit from NSObject can be declared @objc

और ऐसे वर्ग अब मेरी Objective-C वर्गों द्वारा ज्ञात नहीं है: अब है कि मैं Xcode 7 करने के लिए उन्नत, मैं इस त्रुटि मिलती है। मुझे लगता है कि मुझे कक्षा NSObject से प्राप्त करना चाहिए, क्या इसका एप काम करने के तरीके पर कोई असर पड़ेगा?

धन्यवाद

उत्तर

3

एप्पल डेवलपर फोरम में देखें एप्पल कर्मचारी SevenTenEleven के reply

उन्होंने उल्लेख किया कि स्विफ्ट-रूट वाले वर्गों पर @objc की वजह से एनएसओब्जेक्ट-रूट वर्ग की तरह कभी व्यवहार नहीं किया जाता है, जिससे जेनरेट किए गए हेडर और रनटाइम पर विभिन्न अजीबता होती है।

हम अभी भी किसी भी स्विफ्ट क्लास इंस्टेंस को किसी भी ऑब्जेक्ट, मार्क विधियों और गुणों के रूप में स्विफ्ट क्लास पर @objc के रूप में देख सकते हैं, और उद्देश्य-सी प्रोटोकॉल के अनुरूप हैं; क्लास को जेनरेट किए गए हेडर में उजागर नहीं किया गया है और इसके सदस्यों को उद्देश्य-सी में उपलब्ध कराने के लिए डिफ़ॉल्ट नहीं है।

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