Android: @ drawable / तस्वीर को एक drawable में बदलने में विफल


112

मेरे ड्रॉ करने योग्य फ़ोल्डर में मेरे पास कुछ छवियां हैं और वे सभी संदर्भों को परिपूर्ण करते हैं, लेकिन जब मैं कोशिश करता हूं और उसी फ़ोल्डर में सटीक समान आकार के साथ किसी भी अधिक छवियों को जोड़ता हूं, और इसे संदर्भित करने का प्रयास करता हूं, तो झंडे एक त्रुटि है "कन्वर्ट करने में विफल" ड्रॉबल / चित्र एक ड्रॉबल में " । मैंने एक अलग नाम के साथ एक ही छवि की कोशिश की है और यह सिर्फ मुझे वह त्रुटि देता है। मैंने इसे एक अलग XML लेआउट और उसी चीज़ में भी आज़माया है। साथ ही तस्वीर का नाम "जैक", "एबीसी", "सवाल_मार्क" रखा गया है जैसा कि आप देख सकते हैं कि आपके द्वारा उपयोग किए जा सकने वाले अक्षरों के नियमों में कड़ाई है और फिर भी त्रुटि संदेश आता रहता है। किसी भी सलाह समस्या को ठीक करने के लिए बहुत अच्छा होगा, धन्यवाद।

@ ड्रिबल / तस्वीर को ड्रिबल में बदलने में विफल


2
सभी कुछ अजीब कारण के लिए हल किया, अचानक कुछ और क्लिक के बाद यह काम करता है! मेरी सलाह है कि अगर आपको यह समस्या है तो बस ग्रहण को फिर से शुरू करना है और सुनिश्चित करें कि हर चीज़ को संदर्भित किया गया है और सही ढंग से नाम दिया गया है।
जैक ट्रोब्रिज

2
कभी-कभी स्क्रैच से प्रोजेक्ट को फिर से बनाने में इन एंड्रॉइड एसडीके समस्याओं से छुटकारा पाने में मदद मिलती है। मैंने ऐसे अजीब मामले देखे हैं जहाँ इसने मेरे सभी ड्रॉबल्स (कोई त्रुटि नहीं, लेकिन प्रत्येक ड्रॉबल के लिए सही एक के बगल में छवि का उपयोग करके) के लिए गलत छवियों का उपयोग किया है, शायद एक संदर्भ आईडी समस्या।
गिलाउम

फिर से -1 एंड्रॉइड, +1 विंडोज
mihai71

4
मेरे लिए यह फ़ाइल नाम के बीच में "-" था। नाम बदलने के बाद एंड्रॉइड स्टूडियो में सब कुछ ठीक हो गया।
martin.p

जवाबों:


200

ग्रहण को रोकें (दुर्भाग्य से) और समस्या दूर हो जाएगी।


ग्रहण में परियोजना को बंद करना और फिर से खोलना मेरे लिए काम कर गया। धन्यवाद आलिया!
Stephen.hanson

Ia को ड्रॉबल-नॉर्मल-एचडीपीआई के साथ यह समस्या थी लेकिन जब ड्रॉबल-एचडीपीआई में मेरी इमेजेस थीं - सब कुछ ठीक है।
यार

@DoctororDrive - शायद आपकी समस्या थोड़ी अलग थी। क्या आपके पास अभी भी त्रुटि है?
एंड्रोलीआह

4
बहुत मजेदार है कि यह मुद्दा ग्रहण और एंड्रॉइड स्टूडियो दोनों में मौजूद है
मोहम्मद अबूशाही

3
क्लोजिंग / री-ओपनिंग प्रोजेक्ट ने मेरे लिए काम नहीं किया, लेकिन एंड्रॉइड स्टूडियो को छोड़ने / पुनः आरंभ करने ने काम किया। शुक्रिया आलियाह।
tmr

143

यह भी देखें कि क्या संसाधन-नाम में कोई अवैध वर्ण है (मेरे लिए यह मेरी छवि में "-" था)


एंड्रॉइड के खुद के आइकन पैक में 10-डिवाइस-एक्सेस-अलार्म-पीएनजी जैसे फ़ाइलनाम शामिल हैं, जो कि ग्रहण चोक हैं! धन्यवाद।
नौमेनन

12
एंड्रॉइड स्टूडियो उन फ़ाइलनामों पर भी चुटकी लेता है। अंडरस्कोर करने के लिए नाम बदलकर मेरे लिए तय किया।
सरू फ्रेंकेनफेल्ड

मेरे लिए यह अंतरिक्ष पात्र था ""!
इफ्रीतो

अंतरिक्ष मेरे मामले में अपराधी था
सजु

यह "-" मेरे लिए भी था, अजीब तरह से एंड्रॉइड स्टूडियो ने इस चीज को चिह्नित नहीं किया ...
हसीब ज़ुल्फ़िकार

55

यदि ग्रहण को फिर से शुरू करना समस्या को ठीक नहीं करता है, तो सुनिश्चित करें कि छवि का नाम अल्फा वर्ण (गैर-संख्यात्मक) से शुरू होता है।


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

9
यह भी सुनिश्चित करें कि इसमें डैश (-) नहीं है; जैसे 'mic-back' अमान्य है, 'mic_back' ठीक है
Markus

यह मेरी समस्या थी। एंड्रॉइड की वेबसाइट पर पैक में सभी आइकन अग्रणी संख्या में हैं।
दिबांग

क्या यह एक कश होना है? मैं jpg का उपयोग करने की कोशिश कर रहा हूं।
इगोरगानपोलस्की

28

file nameकेवल abc...xyz 012...789 _ . संसाधन फ़ोल्डर में होना चाहिए ।

पूर्व के लिए:

my-image.png हैFalse !
MyImage.png हैFalse !
मेरी छवि हैFalseपीएनजी है !
...
... ...

my-xml.xml हैFalse !
MyXml.xml हैFalse !
मेरा xml.xml हैFalse !
...
... ...


25

ऐसा इसलिए है क्योंकि आपकी छवि का नाम "-" प्रतीक है। केवल अनुमत पात्र [a-zA-Z0-9_] हैं।

धन्यवाद


1
अपरकेस अक्षर मान्य नहीं हैं। यदि आप उनका उपयोग करते हैं, तो एंड्रॉइड स्टूडियो यह त्रुटि देगा: त्रुटि: निष्पादन कार्य के लिए विफल हुआ ': ऐप: mergeDebugResources'। > त्रुटि: अमान्य फ़ाइल नाम: में केवल लोअरकेस अक्षर और अंक ([a-z0-9_]] होना चाहिए
लाइटमैन

5

मुझे एंड्रॉइड स्टूडियो पर एक ही समस्या है। आईडीई को पुनरारंभ करने की आवश्यकता नहीं है, बस परियोजना को बंद करें और फिर से खोलें और जो समस्या को हल करेगा। (सुनिश्चित करें कि src correclty input है)।


परियोजना का पुनर्निर्माण भी करेगा।
माइक

मैंने फ़ाइल -> अमान्य कैश / पुनः आरंभ किया ..., जो अच्छी तरह से काम किया (और शायद ओवरकिल है)।
SMBiggs

3

Android Studio में आपका संसाधन (चित्र) फ़ाइल नाम के साथ शुरू NUMERICनहीं हो सकता है और इसमें कोई भी BIGवर्ण नहीं हो सकता है। अपनी समस्या को हल करने के लिए, जैसा कि अलियाह ने कहा था। बस अपना आईडीई पुनः आरंभ करें। इससे मेरी समस्या भी हल हो गई।


2

आपकी फ़ाइल का नाम सरल करें, ऐसा लगता है कि फ़ाइल नाम में कोई विशेष वर्ण इसे हिचकी बनाता है। उदाहरण के लिए "मेरा मुख्य-शीर्ष-लेख-शीर्षक" को "शीर्ष लेख 1।पीएनजी" पर यकीन नहीं है कि क्यों, लेकिन यह काम करता है


2
ऐसा इसलिए है क्योंकि रिसोर्स फ़ाइल नाम संसाधन पहचानकर्ताओं में परिवर्तित हो जाते हैं R.javaऔर -पहचानकर्ताओं के लिए एक वैध चार नहीं है।
laalto

2

एंड्रॉइड स्टूडियो के लिए मेरे पास यही समस्या थी। यह लिनक्स से चलने के कारण हुआ था, जिसका अर्थ है कि फाइलों को स्वचालित रूप से एक्सटेंशन नहीं मिला था। मैन्युअल रूप से .png को फ़ाइल नाम के अंत में जोड़कर, यह फ़िलाटाइप को पहचान सकता है और तदनुसार लोड कर सकता है।

यदि आप प्रोजेक्ट के अंदर नाम बदलने की कोशिश करते हैं, तो एंड्रॉइड स्टूडियो एक हसीना फिट कर सकता है, क्योंकि एंड्रॉइड आर को तुरंत पुनर्जीवित करने की कोशिश करेगा। मुझे ठीक से पता नहीं है कि क्या त्रुटि होती है क्योंकि यह कोड के कुछ प्रतीत होता है यादृच्छिक रेखा की ओर इशारा करता है, जो मेरे मामले में एक टिप्पणी थी।

उस का समाधान: परियोजना से बाहर ड्रा करने योग्य, नाम बदलने से हटा दें और उन्हें फिर से फेंक दें।


1

यह अन्य पोस्टरों द्वारा सुझाए गए से भी अधिक तुच्छ हो सकता है: यदि आपके पास कई परियोजनाएं हैं, तो सुनिश्चित करें कि आपने गलत प्रोजेक्ट में xml लेआउट फ़ाइल नहीं बनाई है।

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

और हां, मैं वह बेवकूफ हूं। मैं अब से किसी भी अप्रयुक्त परियोजनाओं को बंद कर दूंगा :)


1

मुझे लगता है कि मुझे ग्रहण को फिर से शुरू किए बिना, या परियोजना को बंद किए बिना काम करने का एक तरीका मिला (यह मेरे लिए काम किया):

  • ग्रहण में / के तहत छवि फ़ाइल का नाम बदलें -> फ़ाइल चुनें और F2 दबाएं (मेरे लिए यह res / drawable-mdpi / bush-परिदृश्य.jpg -> bush.jpg में बदल गया)

  • प्रोजेक्ट बनाएँ (यह अभी भी त्रुटि दिखाएगा)

  • छवि बदलें जहाँ आपने इसका उपयोग किया था (मैं ग्राफ़िकल लेआउट में बदल गया हूँ। मेरे लिए यह स्थान रैखिकलूट / पृष्ठभूमि / बुश-लैंडस्केप था -> "बुश-लैंडस्केप" को "बुश" में बदल दिया)

  • प्रोजेक्ट बनाएं


1

मेरी छवि का नाम 21.jpg था। मैंने इसे abc.jpg नाम दिया और इसने काम किया। इसलिए सुनिश्चित करें कि आपका छवि नाम किसी संख्या से शुरू नहीं हो रहा है। हालाँकि उपरोक्त सभी उत्तर भी स्वीकार किए जाते हैं।


1

यदि आपके पास नामकरण सम्मेलनों का अधिकार है, तो बस फ़ाइल -> पर जाएं अमान्य कैश / पुनः आरंभ करें ..

और दबाएं अमान्य कैश / पुनः आरंभ करें ।

इससे मेरे मामले में मदद मिली।


0

मेरे मामले में मेरे पास अलग-अलग डीपीआई और डिवाइस के आकार का समर्थन करने के लिए अलग-अलग फ़ोल्डर्स (एक ही नाम के साथ) में एक छवि थी। उनमें से एक को छोड़कर सभी छवियों का एक ही नाम था। यह गलत हो गया था और एक बार मैंने अन्य नामों की तरह इसका नाम बदल दिया, इससे मेरा मुद्दा हल हो गया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.