2012-09-24 23 views
19

मैंने कई परियोजनाओं में कोड और संपत्तियों का पुन: उपयोग करने के लिए एक स्थिर पुस्तकालय और संसाधन बंडल बनाया है।संसाधन बंडल कॉपी .png .tiff छवियों के रूप में क्यों करता है?

स्थिर पुस्तकालय के भीतर, मैं एक प्रबंधक वर्ग जिनका एकमात्र उद्देश्य अन्य UIViewControllers, जिसका विचारों .xib फ़ाइलें (आम initWithNibName:bundle: पद्धति का उपयोग करके) से बनाई गई हैं बनाने के लिए है।

जब मैं इंटरफ़ेस बिल्डर में दृश्य बनाता हूं, तो छवियां सही ढंग से दिखाई देती हैं। हालांकि, जब मैं सिम्युलेटर पर अनुप्रयोग चलाने, मैं इस त्रुटि मिलती है:

Could not load the "<image_name.png>" image referenced from a nib in the 
    bundle with identifier "com.<my_company>.<app_identifer>" 

पीस के घंटे के बाद, मैं अंत में संसाधन बंडल का निरीक्षण किया, और मैंने पाया कि .png फ़ाइलें यह में नहीं थे! इसके बजाए, .tiff उसी नाम की फ़ाइलों (@ 2x संस्करणों को छोड़कर) वहां थे।

सभी छवियों को प्रतिलिपि बंडल संसाधन के तहत बंडल के निर्माण चरण के भीतर शामिल किया गया है, और मैंने अन्य आईओएस परियोजनाओं पर छवियों का उपयोग किया है (इसलिए वे दूषित नहीं हैं)।

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

अग्रिम में आपकी सहायता के लिए धन्यवाद।

+0

Tifffffff ...... –

+1

हो सकता है कि इस लिंक में कुछ मदद की आप के लिए किया जाएगा :) http://stackoverflow.com/questions/12244494/image- संसाधन-के-आईओएस – IronManGill

+0

@ गिल यह लिंक निश्चित रूप से मदद करता है। यदि आप इसे उत्तर के रूप में जोड़ते हैं, तो मैं इसे स्वीकार करूंगा ताकि आप इसके लिए क्रेडिट प्राप्त कर सकें। धन्यवाद। –

उत्तर

21

संसाधन बंडलों के मुद्दे के लिए, इस लिंक का संदर्भ लें क्योंकि इसमें दो समान प्रश्न हैं।

Conversion Resource bundle

मुझे बताओ जो वास्तव में आप इस मुद्दे को हल करने में मदद मिली जवाब। धन्यवाद।

+6

दूसरा उत्तर और तीसरे उत्तर पर टिप्पणी ने वास्तव में मेरे लिए इस मुद्दे को हल करने में मदद की। असल में, क्योंकि "हैक" (मैक ओएसएक्स बंडल को संशोधित करने) का उपयोग करके आईओएस में बंडल बनाए जाते हैं, इसलिए कुछ सेटिंग्स को सबकुछ काम करने के लिए बदलने की जरूरत है - इस उदाहरण में, यह "उच्च रिज़ॉल्यूशन आर्टवर्क गठबंधन" विकल्प को बदल रहा था " नहीं"। धन्यवाद गिल! –

+0

Gr8 .... मुझे मेरी समस्या हल हो गई 2 ... प्रश्न पोस्ट करने के लिए धन्यवाद !!! : डी – IronManGill

+0

बहुत बढ़िया। आईओएस के लिए हमें वैध बंडल संसाधन कब मिलेगा? – MattD

14

यह मेरी समस्या हल

In your bundle target Go to,

Build Settings > COMBINE_HIDPI_IMAGES and set to NO

+0

बहुत बढ़िया, धन्यवाद – Chahal