2012-04-10 20 views
5

ओके, लोग मैं एक बड़ी संख्या में डिवाइस और स्क्रीन के साथ संगत लेआउट बनाना चाहता हूं। जैसा कि मैंने शोध किया है, मैंने पाया कि सबसे आम स्क्रीन संकल्प 24 9 x320, 480x800, 600x1024, 720x1280 (और इनमें से कुछ अन्य स्क्रीन आनुपातिक) हैं।एंड्रॉइड मल्टी-स्क्रीन क्वालीफायर परिभाषा

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

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

इस तथ्य के लिए कि आप दूसरी विधि का उपयोग करते समय पोर्ट या भूमि क्वालीफायर निर्दिष्ट नहीं कर सकते हैं, मैं पहले को पसंद करता हूं। मेरा प्रश्न है: एंड्रॉइड 3.2 और बाद के संस्करणों के साथ पहली विधि संगत है? क्या मुझे एंड्रॉइड < के लिए पहली विधि का उपयोग करना चाहिए 3.2 और एस Android के लिए econd> 3.2? यदि ऐसा है, तो मुझे दो परियोजनाएं बनाना चाहिए, या शायद इन दो विधियों को गठबंधन करना (सामान्य आकार के क्वालीफायर के लिए और विशिष्ट न्यूनतम-चौड़ाई क्वालीफायर के लिए लगभग 10 लेआउट आकार बनाएं)। मुझे लगता है कि अधिक संसाधनों की आवश्यकता होगी।

धन्यवाद और मेरा बुरा भाषा के लिए खेद है,

उत्तर

1

एंड्रॉयड में आप पिक्सल के आधार पर अपने लेआउट डिजाइन नहीं है ... आप घनत्व स्वतंत्र पिक्सल (डुबकी या डीपी) के आधार पर उन्हें डिजाइन। ये आपके डिवाइस की डॉट्स प्रति इंच स्क्रीन घनत्व द्वारा स्केल किए गए डिवाइस पिक्सेल हैं। एंड्रॉयड 4 सामान्य स्क्रीन घनत्व बाल्टी है, और आप एक उचित फ़ोल्डर (res/drawable-ldpi, रेस/drawable-mdpi, रेस/drawable-hdpi, रेस/drawable-xhdpi) के तहत हर एक के लिए ड्रॉएबल प्रदान करनी चाहिए।

अन्य अपने लेआउट उपकरणों की एक भीड़ के साथ संगत बनाने के तरीके खींचे ग्राफिक्स 9png उपयोग करने के लिए, और XML ड्रॉएबल कि उनके आयामों के लिए डी पी पर भरोसा करते हैं।

Android स्क्रीन समर्थन के लिए

सिफारिश की पठन:
http://developer.android.com/guide/practices/screens_support.html

जहां तक ​​छोटी से छोटी-चौड़ाई क्वालीफायर के रूप में, आप तथ्य यह है कि छोटी से छोटी चौड़ाई पिक्सल डी पी में निर्दिष्ट किया जाता है, न कि लापता हैं। इस खंड में तालिका 2 की जांच करें:
http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

पहला तरीका एंड्रॉइड 3.2+ समेत सभी उपकरणों पर काम करता है।

+0

स्पष्टीकरण के लिए धन्यवाद। "रेस/drawable - ?? अनुकरणीय" (के रूप में मैं जानता हूँ कि) आदेश प्रत्येक समाधान के लिए गुणवत्ता रखने के लिए छवियों और शैली तत्वों, पृष्ठभूमि परिभाषाओं, आदि जैसे स्टोर करने के लिए प्रयोग किया जाता है। – ali

+0

यह वैध या drawable-sw600dp-mdpi, drawable-sw600dp-mdpi और इतने पर देने की आवश्यकता है। – arjoan

+0

@Arun: के रूप में आप जितने चाहें, उतने संसाधन सेट प्रदान कर सकते हैं, और जैसा कि आप की जरूरत के रूप में कई क्वालीफायर संयोजन का उपयोग करें।प्रत्येक डिवाइस पर, सिस्टम सर्वश्रेष्ठ क्वालीफायर संयोजन की तलाश करेगा जो डिवाइस चश्मे से सबसे नज़दीकी से मेल खाता है। – Theo

0

हो सकता है सबसे अच्छा तरीका है आगे दोनों लेआउट क्वालिफायर का उपयोग करना है: -

  1. रेस \ लेआउट बड़े
  2. रेस \ लेआउट-sw720dp

दोनों निर्देशिका में एक ही लेआउट की स्थापना a layout alias का उपयोग कर।

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