2012-01-01 10 views
5

मेरे पास मेरी लाइब्रेरी में दो मूवीक्लिप प्रतीकों हैं और मैं उन्हें एक ही कक्षा साझा करना चाहता हूं, लेकिन फ्लैश मुझे एक ही कक्षा को किसी भी दो अलग-अलग एमसी प्रतीकों को असाइन करने की अनुमति नहीं देता है, इसलिए इसके बजाय मैं दो फर्जी कक्षाएं बनाईं जो कक्षा को विस्तारित करती थीं जिसे मैं शुरुआत में साझा करना चाहता था।एएस 3 दो मूवीक्लिप्स समान कक्षा साझा करना

इसलिए एक अलग वर्ग को विस्तारित 2 अलग-अलग वर्गों द्वारा परिभाषित दो एमसी प्रतीकों को मुझे कोड का एक ही टुकड़ा साझा करने की अनुमति मिलती है।

मेरा प्रश्न: क्या कक्षा 2 या दो से अधिक विभिन्न लाइब्रेरी प्रतीकों के बीच साझा करना बेहतर था?

+1

आपने फर्जी कक्षाएं नहीं बनाईं। @ कैमरून के उत्तर पर मेरी टिप्पणी देखें। चाहे आप कक्षा को परिभाषित करें या नहीं, प्रत्येक लाइब्रेरी आइटम पहले से ही एक अनूठी कक्षा है और यदि आप कक्षा पहचानकर्ता निर्दिष्ट नहीं करते हैं, तो फ़्लैश स्वचालित रूप से एक बनाता है। –

+0

@ बोल्टक्लॉक आप फ्लैश सीएस 5/सीएस 4/सीएस 3 टैग को हटा चुके हैं। यह विशेष रूप से आईडीई से संबंधित है। –

+0

हाँ, आप सही हैं। मुझे अपने शब्दों को बेहतर चुनना चाहिए था। जब मैंने फर्जी कहा तो मैं वास्तव में प्रॉक्सी के बारे में सोच रहा था। इसके अलावा, इस तथ्य के बारे में जानकारी के लिए धन्यवाद कि फ्लैश स्वचालित रूप से प्रत्येक एकल लाइब्रेरी आइटम के लिए कक्षाएं बनाता है, मैंने सोचा था कि फ्लैश केवल कोड वाले प्रतीकों के लिए कक्षाएं बनाता है और यह उन्हें स्वचालित रूप से बनाए गए पैकेज में रखेगा जो निर्यात किए गए एसएफएफ का नाम रखता है _fla के साथ prefixed फ़ाइल (उदाहरण के लिए exportedSwfName_fla)। स्पष्टीकरण और उदाहरण के लिए – IneedHelp

उत्तर

4

जो कुछ भी आप कर रहे हैं, आप मूवी क्लिप ऑब्जेक्ट से जुड़े वर्ग का "उपयोग" करने की अवधारणा को समझ नहीं सकते हैं। आपके लिए समान वर्ग नाम दोनों वस्तुओं को असाइन करना असंभव है और यहां तक ​​कि यदि आप हैं, तो मेरा मानना ​​है कि आईडीई वास्तव में दो अलग-अलग वस्तुओं को बना रहा है जो मूल वर्ग का विस्तार करते हैं। आप सीधे एक कक्षा में लाइब्रेरी आइटम असाइन कर सकते हैं, या आप एक नया क्लास नाम परिभाषित कर सकते हैं जो बेस क्लास के रूप में संदर्भित .as फ़ाइल/क्लास को बढ़ाता है। उत्तरार्द्ध समाधान है जो कई वस्तुओं के आधारभूत कार्यक्षमता के साथ बस बेस क्लास को लागू करने के लिए है।

इसका एक उदाहरण एक मूल वर्ग को परिभाषित करना होगा जो रोल को पकड़ता है और घटनाओं को रोल करता है और क्लिप को रोल/इन रोल पर बढ़ा देता है। फिर आप अपने मूवीक्लिप में 10 अलग-अलग प्रकार के बटन बनाते हैं और क्लास ऑब्जेक्ट को अनूठा नाम देते हुए क्लास को बेस क्लास के रूप में निर्दिष्ट करते हैं।

+1

। – IneedHelp

+0

इस तरह के व्यवहार को पाने के लिए बेस-क्लास का उपयोग करना काफी आम है। –

+0

+1, यह मेरे उत्तर (अब हटा दिया गया) से काफी बेहतर है। मैं लाइब्रेरी ऑब्जेक्ट्स नामकरण के बारे में भूल गया ... – Cameron

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