2011-01-31 8 views
6

मैं अपने आईफोन एप्लिकेशन में विभिन्न छवियों का उपयोग करना चाहता हूं, इस पर निर्भर करता है कि वर्तमान डिवाइस आईफोन 3 जी, आईफोन 4, या आईपैड है या नहीं। मैंने डिवाइस के स्क्रीन रिज़ॉल्यूशन (आकार) को प्राप्त करने का प्रयास किया है, लेकिन यह अलग-अलग iPhones के लिए हमेशा 320 x 480 देता है।आईओएस डिवाइस प्रकार के आधार पर मैं अलग-अलग छवियों का उपयोग कैसे करूं?

मैं कैसे निर्धारित करूं कि मैं किस प्रकार का डिवाइस चला रहा हूं ताकि मैं सही छवियां प्रदान कर सकूं?

मैं आईफोन ओएस संस्करण नहीं प्राप्त करना चाहता हूं।

+8

कुछ भी उच्च संकल्प छवियों के लिए योजना का नामकरण 2x' साथ '@ गलत? – BoltClock

उत्तर

7

यदि आप अपने संकल्प के लिए उचित ग्राफिक्स चुनने के प्रयोजनों के लिए यह जानकारी चाहते हैं, तो मिडापर्का का जवाब वह है जिसे आप ढूंढ रहे हैं।

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

NSString *myDeviceModel = [[UIDevice currentDevice] model]; 
CGRect myScreenSize = [[UIScreen mainScreen] bounds].size; 
+1

+1 यह जानकर प्यार है कि यह क्यों कम किया गया था - यह सभी "शुद्ध" उत्तर के बाद है। –

10

वहाँ सबसे अधिक संभावना है आप, क्या करने के लिए के रूप में आईओएस iPhone (रेटिना और पूर्व रेटिना संकल्प) और iPad के लिए उपयुक्त आकार में लोड हो रहा है छवियों के लिए समर्थन में बनाया गया है प्रयास कर रहे हैं कि क्या करना है की कोई जरूरत नहीं है।

अधिक जानकारी के लिए Resource Programming Guide (विशेष रूप से "आईओएस में निर्दिष्ट उच्च-रिज़ॉल्यूशन छवियां निर्दिष्ट करें" और "आईओएस डिवाइस-विशिष्ट संसाधनों का समर्थन करता है" अनुभाग पढ़ें और iOS Application Programming Guide पढ़ें।

संयोग से, दोनों पूर्व और iPhone रेटिना पोस्ट/फलियाँ एक बिंदु 320 x 480. एप्पल के संकल्प (संकल्प स्वतंत्र) और पिक्सेल आकार बिंदु आकार के बीच अलग रास्ते चीजों में मदद करने के लिए है।

+1

बस एक छोटा सा सुधार - आईपैड में 320x480 का पॉइंट रिज़ॉल्यूशन नहीं है, यह केवल छोटे डिवाइस हैं। आईपैड में 1024x768 का पॉइंट रेज़ोल्यूशन है। –

+0

@ केंडल अच्छा बिंदु - मतलब "पॉड"। तय किया है :-) –

+1

आप यह भी जोड़ सकते हैं कि यदि आप भविष्य में टैबलेट डिवाइसों के पास सटीक 1024x768 बिंदु स्क्रीन आकार नहीं है, तो आप 'if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) का उपयोग करके टेबलेट आकार के फ़ॉर्म कारक के लिए परीक्षण कर सकते हैं। –

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

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