यहाँ इस विषय के बारे में मेरे ब्लॉग से सिवाय एक-योग्य है। दुर्भाग्य से, imageNamed: नहीं स्वचालित रूप से -568h छवियों की 2x संस्करणों @, लोड होगा जब एक iPhone 5
कभी कभी यह बात नहीं है पर चल रहा है उदाहरण के प्रतीक और iPhone 4 & पर गैर पूर्ण स्क्रीन ग्राफिक्स शायद रहे हैं उसी के लिए 5. हालांकि, अगर आपके पास टूलबार आदि के लिए पूर्ण-स्क्रीन पृष्ठभूमि छवियां हैं, या पूर्ण-चौड़ाई/ऊंचाई पृष्ठभूमि छवियां हैं तो आपको समस्याएं होंगी। आपकी 480-उच्च छवियां अधिकतर फैली हुई होंगी (और परिणामस्वरूप शायद डरावनी दिखाई देगी)।
आप मैन्युअल रूप से स्क्रीन आकार की जाँच करें और इस तरह से सही छवि को लोड कर सकते हैं:
UIImage* myImage;
CGFloat screenHeight = [UIScreen mainScreen].bounds.size.height;
if ([UIScreen mainScreen].scale == 2.f && screenHeight == 568.0f) {
myImage = [UIImage imageNamed:@"myImage-568h.png"];
} else {
myImage = [UIImage imageNamed:@"myImage.png"];
}
UIImage imageNamed फेरबदल तो यह स्वचालित रूप से सही छवि को लोड करता है का एक तरीका नहीं है। विवरण के लिए नीचे लिंक देखें।
अधिक पर: http://pervasivecode.blogspot.co.uk/2012/09/making-apps-work-on-iphone-5-screen-size.html
संपादित करें: @Sound ब्लास्टर & @GrizzlyNetch ठीक कह रहे हैं, कोड में आप imageNamed का उपयोग करना चाहिए: @ "myImage-568h.png"] लेकिन वास्तविक फ़ाइल नाम होना चाहिए [email protected]। यदि आप ऐसा नहीं करते हैं, तो पैमाने गलत है, जैसा कि उन्होंने कहा था।
स्रोत
2012-09-21 14:28:33
आपको विभिन्न प्रश्नों को अलग-अलग प्रश्नों में अलग करना चाहिए। –