2013-12-11 7 views
17

बस आज भर में ठोकर खाई। अगर मैं <QuartzCore/QuartzCore.h> आयात किए बिना CALayer तक पहुंचने का प्रयास करता हूं तो मुझे एक्सकोड 4.6 में चेतावनियां मिल रही हैं। एक ही तथापि Xcode में ठीक काम करता है 5.क्वार्ट्ज कोर आयात Xcode 5 में आवश्यक नहीं है?

+7

हाँ यह सच है। मुझे संदेह है कि आईओएस 7 एसडीके में अब इस ढांचे को शामिल किया गया है जहां आईओएस 6 नहीं था। यह केवल एक मुद्दा होगा यदि आप अपने प्रोजेक्ट को Xcode4 और 5 –

+0

दोनों में काम करने की कोशिश कर रहे हैं, तो मैं इस सवाल को सामुदायिक विकी के रूप में चिह्नित करने के लिए SO से अनुरोध करना चाहता हूं। –

+0

यकीन नहीं है, लेकिन मुझे लगता है कि यह इस तरह के स्वच्छ और संक्षिप्त स्पष्टीकरण के लिए एक्सकोड 5 –

उत्तर

23

हाँ, <QuartzCore/QuartzCore.h> स्वचालित रूप से शामिल किया गया है, लेकिन इस , और अधिक एक पक्ष प्रभाव इच्छित स्थान से हो रहा है क्योंकि यह केवल परोक्ष रूप से शामिल है:

  • <UIKit/UIKit.h><UIKit/UISlider.h> शामिल ,
  • iOS 7 SDK में
  • , <UIKit/UISlider.h> (CAShapeLayer प्रकार के) UISlider कक्षा में नया उदाहरण चर के कारण <QuartzCore/QuartzCore.h>, भी शामिल है।

इसके अलावा, Xcode 5 जिस पर डिफ़ॉल्ट रूप से है "स्वचालित रूप से लिंक फ़्रेमवर्क" सेटिंग एक नए निर्माण, है (और नए "मॉड्यूल" सुविधा की आवश्यकता है) ताकि QuartzCore ढांचे भी जोड़ा गया है, लिंक पुस्तकालयों।

+1

+10 में अंतर्निहित है .PS: मैं अभी भी बाइनरी पुस्तकालयों के साथ लिंक में जोड़ने के बिना CALayer विधियों का उपयोग करने में सक्षम हूं – Anonymous

+0

मैंने यह भी देखा है , और 'यूआईस्लाइडर' हेडर फ़ाइल विशेष रूप से वर्बोज़ है, क्योंकि कक्षा इंटरफ़ेस में इवर्स घोषित किए जाते हैं (जहां हम सीखते हैं कि आईओएस 7 डिज़ाइन को "लुक न्यू" कहा जाता है) ... शायद यह इरादा नहीं था! – Guillaume

+1

@ अनाम: आप सही हैं। मैंने इसे एक प्रोजेक्ट के साथ परीक्षण किया था जिसे प्रारंभ में एक्सकोड 4 के साथ बनाया गया था। एक नया एक्सकोड 5 प्रोजेक्ट के साथ, संदर्भित पुस्तकालय डिफ़ॉल्ट रूप से स्वचालित रूप से जुड़े होते हैं। मैंने तदनुसार जवाब अपडेट किया है। –

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