2011-01-30 13 views
34

मेरे पास Android Library Project है जिसमें इसकी शैलियों /xml फ़ाइल में परिभाषित कई शैलियों/थीम शामिल हैं।एंड्रॉइड लाइब्रेरी प्रोजेक्ट का उपयोग करते समय आप एक्सएमएल संसाधनों को सही तरीके से कैसे संदर्भित करते हैं?

आम तौर पर, जब कुछ अन्य XML लेआउट या मैनिफ़ेस्ट फ़ाइल में इस शैली को संदर्भित, तो आप सिर्फ लिखते थे android:theme="@style/TheNameOfTheStyle"

एक पुस्तकालय परियोजना का उपयोग कर, कैसे निर्भर परियोजना ठीक से कि शैली अब संदर्भ करता है? बस इसे android:theme="@style/TheNameOfTheStyle" के रूप में छोड़कर मुझे एक त्रुटि मिलती है कि उस नाम से मेल खाने वाला कोई संसाधन नहीं है।

मुझे लगता है कि यह एक ही सवाल @string जैसे अन्य संदर्भ, @color आदि

धन्यवाद

के लिए लागू होता है

संपादित करें: ठीक है तो ऐसा लगता है कि तुम सिर्फ सामान्य है जैसे कि यह संदर्भ के लिए लगता है कि कर रहे हैं, लेकिन

Error: No resource found that matches the given name (at 'theme' with value '@style/ThemeName').

(facepalm) संपादन

: ग्रहण में सांत्वना मुझे इस त्रुटि दे रहा है

मुझे ग्रहण में "स्वच्छ परियोजना" की आवश्यकता है। अब यह काम कर रहा है।

+0

एक Android पुस्तक में के रूप में जोड़ दिया जाता है मैं पढ़ रहा हूँ यह आप कहते हैं बनाने के लिए है अन्य संसाधन को @ [packagename।] प्रकार/आईडी के रूप में संदर्भित कर सकते हैं जहां वर्तमान ऐप पैकेज के बाहर पैकेज नाम छोड़ दिया गया है, और आप अपनी लाइब्रेरी प्रोजेक्ट के पेज नाम का उपयोग कर सकते हैं। लेकिन, यह मेरे लिए काम नहीं करता है, न ही परियोजना की सफाई और पुनर्निर्माण करता है :-( –

+0

@Andrew आपको इस तरह के पैकेज नाम में डालने की आवश्यकता नहीं है। अगर संसाधन आपके पुस्तकालय प्रोजेक्ट में है, तो आप बस संदर्भ दे सकते हैं यह सामान्य रूप से जैसे कि यह आपकी परियोजना में था। – cottonBallPaws

+0

नोट: पहला लिंक बहिष्कृत किया गया है। – user905686

उत्तर

15

संसाधन जोड़ने के बाद परियोजना बनाने के लिए महत्वपूर्ण है (या केवल ऑटोबॉल्ड ऑन है) और परियोजना की सफाई ज्यादातर बार मदद करता है। "कुछ" गलत होने पर ग्रहण को पुनरारंभ करना भी एक अच्छा विचार है।

यह भी ध्यान रखें कि एंड्रॉइड रिकॉर्ड्स को विलीन करता है, इसलिए आखिरी परियोजना जो नाम "जीत" बनाती है। इस कारण से किसी भी तरह से सभी संसाधनों को उपसर्ग करना एक अच्छा विचार है।

+1

जबकि आपके समाधान ने मेरी विशिष्ट समस्या का समाधान नहीं किया है (मेरी समस्या को हल करने के लिए प्रश्न में मेरा संपादन देखें), ऐसा लगता है कि आपका उत्तर है उन लोगों की मदद की जिन्होंने इस प्रश्न का अपना रास्ता खोज लिया है। इसलिए मैं आपके उत्तर को स्वीकार्य मानूंगा। – cottonBallPaws

2

मैं बस एक ही मुद्दे में भाग गया हालांकि ग्रहण में सफाई तब तक काम नहीं करती जब तक कि मैं लाइब्रेरी प्रोजेक्ट और नियमित परियोजना दोनों को मिलान करने के लिए सेट नहीं करता: लक्ष्य निर्माण संपत्ति।

0

मुझे एंड्रॉइड स्टूडियो में यह समस्या थी। ऐसा लगता है कि एंड्रॉइड स्टूडियो को यह नहीं पता था कि प्रोजेक्ट के बावजूद मेरी लाइब्रेरी प्रोजेक्ट लाइब्रेरी थी। एंड्रॉइड.ब्राइबरी = सच बताते हुए प्रॉपर्टीज।

मैंने परियोजना संरचना में "लाइब्रेरी" चेकबॉक्स की जांच करके इस समस्या को ठीक किया है।

enter image description here

3

मैं उपयोग इंटेलीजे और क्या मेरे लिए काम किया संसाधन संदर्भ के लिए सामान्य रूप से और यह सुनिश्चित करें लाइब्रेरी प्रोजेक्ट के निर्भरता

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

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