एक्सकोड प्रोजेक्ट से गलती से हटाए गए xcassets फ़ाइल


81

मैं छवि संग्रह से एक भी फ़ोल्डर को निकालना चाहता था, हालांकि, मैंने किसी तरह पूरे xcassets फ़ाइल को कचरा में फेंकने में कामयाब रहा।

सामान्य 'पुट बैक' विधि उपलब्ध नहीं है, और बस हटाए गए फ़ोल्डर को एक्सकोड में खींचकर एक त्रुटि उत्पन्न होती है:

"Images.xcassets" को "ProjectPear" में कॉपी नहीं किया जा सकता है क्योंकि समान नाम वाला आइटम पहले से मौजूद है।
फ़ाइल को सहेजने के लिए, या तो एक अलग नाम प्रदान करें, या अलग हट जाएं या मौजूदा फ़ाइल को हटा दें, और फिर से प्रयास करें।

मुझे यकीन नहीं है कि यह संग्रह मेरे Xcode प्रोजेक्ट के भीतर स्थित है, क्योंकि नेविगेटर कुछ भी नहीं दिखाता है, और कमांड-लाइन किसी भी संकेत को नहीं छोड़ रहा है। मैं project.pbxprojफ़ाइल के साथ गड़बड़ करने से डरता हूं , क्योंकि यह मेरी छवि संग्रह की तुलना में बहुत अधिक उछल सकता है।

संपादित करें: फ़ाइलों को ट्रैश से फाइंडर पर वापस खींचना सफल रहा था, हालांकि, Xcode नेविगेटर अब पहचानता नहीं है - या इस मामले में, अभी भी पहचान नहीं करता है - .xcassets फ़ाइल। मुझे यकीन नहीं है कि .pbxproj फ़ाइल में कुछ जोड़ना है या नहीं।


बस एक कमांड + जेड (पूर्ववत करें) करें। मुझे बहुत समय बचा लिया :)
गोकुल

जवाबों:


216

मैंने अभी-अभी खुद ऐसा किया है और यह पता लगा लिया है कि इस मुद्दे को कैसे हल किया जाए।

  1. फाइंडर में प्रोजेक्ट फोल्डर में जाएं । आपको पता होना चाहिए कि फ़ोल्डर Images.xcassets अभी भी है।

  2. इसे डेस्कटॉप या किसी चीज़ की तरह एक अलग स्थान पर ले जाएँ । यह अभी भी सभी छवियों और json फ़ाइलों की है।

  3. Xcode पर वापस जाएं और छवियों के लिए एक नई संपत्ति सूची बनाएं।

    File > New > File... > Resource > Asset Catalog

    इसे नाम दें छवियाँ

  4. Xcode से बाहर निकलें और फाइंडर पर लौटें।

  5. अपने प्रोजेक्ट में अपने पुराने Images.xcassets से नए Images.xcassets निर्देशिका में फ़ोल्डर्स कॉपी करें ।

  6. Xcode लॉन्च करें और आप व्यवसाय में वापस आ गए हैं!


वाह, मैंने दुर्घटना से सिर्फ अपने एसेट्स.नकसेट्स में डिलीट कर दिया है और यह अभी भी काम करता है, लेकिन यह काम नहीं करता है इसलिए मैं नई छवियां नहीं जोड़ सकता ... मैंने सफलता के बिना हर जगह फ़ोल्डर की तलाश की
यीशु रोड्रिगेज

@JesusAdolfoRodriguez, यदि आपने गलती से एसेट कैटलॉग को हटाते समय 'मूव टू ट्रैश' को चुना है, तो आपको ट्रैश में फ़ोल्डर ढूंढने में सक्षम होना चाहिए, जब तक कि आपने पहले ही कचरा खाली नहीं कर दिया हो।
सीन ब्लेंई

1
अच्छा लगा, मेरे लिए काम किया। FYI करें किसी के लिए जो गलती से इसे हटा दिया गया है, मुझे लगता है कि ऐसा इसलिए है क्योंकि हमने एसेट्स फ़ोल्डर के अंदर Cmd + डिलीट करने की कोशिश की थी। इसके बजाय, केवल एक फ़ाइल हटाने के लिए डिलीट दबाएं
मेरिकैट

23

यदि आपने इसे पूरी तरह से नहीं हटाया है, तो आप इसे केवल फाइंडर से वापस खींच सकते हैं। (अपनी परियोजना पर राइट क्लिक करें और जांच करने के लिए 'खोजकर्ता में खुलासा' चुनें)

यदि यह पूरी तरह से चला गया है तो आप बस Cmd + N -> संसाधन पर जाएं और एसेट कैटलॉग चुनें। फिर आप ड्रैग एंड ड्रॉप या राइट-क्लिक और 'फाइल्स टू ...' के माध्यम से अपनी कल्पनाओं को फिर से जोड़ते हैं और जाने के लिए अच्छा होना चाहिए।

उम्मीद है की वो मदद करदे।


1
धन्यवाद, मैं सब कुछ वापस फ़ोल्डर में खींचने में कामयाब रहा, लेकिन नाविक फ़ाइल नहीं दिखाता है। क्या नाविक को ताज़ा करने का एक तरीका है (या कुछ इसी तरह)?
aeveus 16

खैर, Cmd + W और फिर से खोलना कभी मदद की है, लेकिन एक कोशिश के काबिल है। यदि आपको फाइंडर में फाइलें मिली हैं, तो बस उन्हें वापस खींचें और यही होना चाहिए
फिन गैडा

अच्छी तरह से फ़ाइलों को वापस खींचने में ठीक चला गया, यह सिर्फ इतना है कि नेविगेटर अब .xcassets फ़ाइल को नहीं पहचानता है, क्योंकि यह बस दिखाई नहीं देता है। मैं इसे फाइंडर में ठीक कर सकता हूं, लेकिन XCode नेविगेटर मुझे विश्वास नहीं करता है।
ऐव्यूस

यह गूंगा लग सकता है, लेकिन मेरे लिए XCode को फिर से शुरू करना और इस परियोजना की सफाई ने काम को अक्सर कम कर दिया था
फिन

इस समय, मैं थोड़ा निराश हूं, इसलिए मैं सभी उत्तरों का स्वागत करता हूं। मैंने पहले से ही XCode को पुनरारंभ करने के अलावा परियोजना के पुनर्निर्माण और सफाई की कोशिश की है; मदद नहीं की। :(
एवियस

3

एक्सकोड बीटा के साथ आज भी यही समस्या थी, मैं किसी कारण से एक नई संपत्ति सूची नहीं बना सका। यह एक वॉचकिट एक्सटेंशन प्रोजेक्ट पर था यहां मैंने इसे हल करने के लिए क्या किया है:

  1. खोजक में मैंने अपने ऐप में एक अन्य फ़ोल्डर से एक मौजूदा images.xcassets को अपने डेस्कटॉप पर कॉपी किया।
  2. इस फ़ोल्डर की सामग्री को निकाल दिया गया है।
  3. मेरे ट्रैश से हटाए गए (एकल) छवि एसेट को फ़ोल्डर में (मेरे डेस्कटॉप पर) कॉपी किया गया।
  4. XCode में मेरी परियोजना में पूरे फ़ोल्डर को घसीटा।

यह तय हो गया और सब कुछ सामान्य हो गया।


3

यदि आपने इसे पूरी तरह से हटा दिया है, तो ये भी एक नई Images.xcassets पाने के लिए चरण हैं:

  1. नेविगेटर में, प्रोजेक्ट पर क्लिक करें।
  2. पर जाएं: फ़ाइल> नया> फ़ाइल> एसेट कैटलॉग जोड़ें> इसे नाम दें।
  3. इसमें AppIcon और LaunchImage जोड़ने के लिए:

प्रोजेक्ट सेटिंग पर जाएं:

  1. जनरल टैब में, ऐप आइकन और लॉन्च इमेज के लिए नीचे स्लाइड करें
  2. ऐप आइकन स्रोत के बगल में स्थित विकल्प पर क्लिक करें और एसेट कैटलॉग का उपयोग करें चुनें
  3. एक विंडो पॉप-अप होगी- अपनी नई Images.xcassets फ़ाइल का नाम चुनें और माइग्रेट पर क्लिक करें।
  4. SelectImage भी जोड़ें चुनें। अब आप अपने प्रोजेक्ट में नए Images.xcassets देख सकते हैं :)।

3

मैंने गलती से एसेट फ़ोल्डर के संदर्भ को हटा दिया है ताकि यह अब Xcode में दिखाई न दे। लेकिन जब मैंने खोजक से जांच की, तो संपत्ति फ़ोल्डर अभी भी प्रोजेक्ट फ़ोल्डर में था।

यदि आपने ऐसा किया है, तो बस Xcode (अपने मौजूदा प्रोजेक्ट के भीतर) से फ़ाइल मेनू खोलें और बहुत ऊपर आप (मौजूदा) फ़ाइलों को उस बहुत ही प्रोजेक्ट में (वापस फिर से) जोड़ सकते हैं - यह कहता है "फ़ाइलों को जोड़ें ..."


या सिर्फ फाइंडर से ड्रैग-एन-ड्रॉप
djdance

2

आमतौर पर फ़ाइल का संदर्भ Xcode से हटा दिया जाता है, मूल फ़ोल्डर अभी भी प्रोजेक्ट डायरेक्टरी में मौजूद है।

अपने प्रोजेक्ट फ़ोल्डर पर राइट-क्लिक करें , "अपने प्रोजेक्ट में फ़ाइलें जोड़ें" पर क्लिक करें, अपने प्रोजेक्ट में एसेट्स खोजें और जोड़ें पर क्लिक करें और आप कर चुके हैं

यहाँ छवि विवरण दर्ज करें


1

अपने प्रोजेक्ट में किसी भी चीज़ पर राइट क्लिक करें और "शो इन फाइंडर" पर क्लिक करें। खोजक में अपने प्रोजेक्ट फ़ोल्डर में थोड़ा खोज करें और आप उसे ढूंढ लेंगे। मैं अभी मैक पर नहीं हूं, या मैं आपको डिफ़ॉल्ट .xcassetsफ़ोल्डर स्थान पर सीधे अधिक सीधा रास्ता दूंगा ।

और वैसे भी, यदि आप उस स्थान पर "नया" फ़ोल्डर कॉपी / बनाने में सक्षम नहीं हैं क्योंकि "समान नाम वाला आइटम पहले से मौजूद है", तो इसका मतलब है कि आपने वास्तव में फ़ोल्डर को नहीं हटाया था। आपने अभी XCode में अपनी परियोजना के संदर्भ उस फ़ोल्डर से हटा दिए हैं। आपकी हार्ड ड्राइव पर मौजूद फ़ोल्डर कहीं नहीं गया।


आह धन्यवाद, मुझे फ़ोल्डर मिला, हालांकि यह प्रतीत होता है कि इसकी अधिकांश फाइलें गायब हैं। क्या आप यह जान पाएंगे कि क्या बाकी लोग पुनः प्राप्ति योग्य हैं?
ऐव्यूस

मुझे यकीन नहीं है। यदि यह ऐसा कुछ है जो आपके प्रोजेक्ट में था, लेकिन अब नहीं है, तो यह या तो फाइंडर में आपके प्रोजेक्ट फ़ोल्डर में कहीं है, या इसे ट्रैश बिन में ले जाया जा सकता है।
nhgrif 15

1

[मुझे एहसास है कि यह आपसे एक बहुत पुराना सवाल है @Aeveus] सभी जवाब फिर से जोड़ने वाली संपत्ति को फिर से करने के बारे में बात करते हैं। यह देखते हुए कि आप पूर्ववत नहीं कर सकते, आपके मूल विवरण में अनुपलब्ध एक चरण यह है:

आपकी प्रोजेक्ट। Pbxproj फ़ाइल में, नीचे के रूप में संपत्ति का संदर्भ दिया गया होगा:

45AE4E781C183FBA0051674F /* Assets.xcassets in Resources */ = {... 

मान लें कि आपके पास स्रोत कोड नियंत्रण प्रणाली (git, आदि) है, तो आप अपनी प्रोजेक्ट की मूल सामग्री पर वापस जा सकते हैं। pbxproj फ़ाइल, या मैन्युअल रूप से बस हटाए गए लाइनों को फिर से जोड़ें, और xcode में प्रोजेक्ट फ़ाइल को फिर से खोलें। अब आप सब तैयार हैं।


0

मेरे पास एक ही समस्या थी और मैंने जेसन से ऊपर के चरणों का पालन किया है, लेकिन आखिरकार मुझे लाल रंग में Image.xassets मिला, इसलिए मेरी छवियों को खोजने के लिए मुझे Image.xassets में क्लिक करना पड़ा और फिर शीर्ष दाएं कोने पर रखा गया मेरी image.xassets फ़ोल्डर के लिए पूर्ण पथ और यह मेरी समस्या तय की। आशा है कि इससे सहायता मिलेगी!

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