सबसे पहले मैं यह कहना चाहता हूं कि मैं शायद इस विषय पर इंटरनेट पर मौजूद सभी चीजों को लाल कर दूं।
मुझे इसके बारे में तस्वीर मिलती है लेकिन फिर भी मुझे यकीन नहीं है, और मेरा दिमाग उबल रहा है यह सोचने की कोशिश कर रहा है कि इसे कैसे ठीक से जाना चाहिए, इसलिए मुझे इन चीजों को स्पष्ट करने के लिए किसी और की आवश्यकता है जो मुझे अन्य ट्यूटोरियल और विषयों में मिली है।
साथ ही बहुत सारे प्रश्न और उत्तर थोड़े पुराने हैं और मुझे पता है कि छोटे, बड़े और बड़े जैसे लेआउट के लिए ये क्वालिफायर थोड़े बहिष्कृत हैं इसलिए ताज़ा करना अच्छा होगा।
तो जो चीज मुझे परेशान करती है वह यह है कि एंड्रॉइड में कई स्क्रीन साइज और ओरिएंटेशन को कैसे सपोर्ट किया जाए?
मैं समझता हूं कि मुझे अलग-अलग स्क्रीन घनत्व के लिए अलग-अलग खींचने योग्य संसाधनों का समर्थन करने की आवश्यकता है और मुझे विभिन्न स्क्रीन आकारों के लिए सबसे छोटी चौड़ाई उपलब्ध क्वालिफायर का उपयोग करने की आवश्यकता है।
समस्या यही है और मुझे समझ नहीं आता कि इन दोनों को एक साथ कैसे किया जाए।
उदाहरण के लिए पहले उदाहरण के लिए मेरे पास लोगो का चिन्ह है जो मोबाइल की पूरी स्क्रीन पर होना चाहिए।
क्या मैं वास्तव में सभी ओरिएंटेशन में उस लोगो के सभी संभावित समाधान और सभी संभावित आकार प्रदान कर सकता हूं या एंड्रॉइड उन्हें मेरे द्वारा दिए गए निकटतम लोगों से आवश्यकतानुसार आकार देगा?
विभिन्न घनत्व खींचने योग्य संसाधनों के साथ सबसे छोटा चौड़ाई क्वालिफायर कैसे काम करता है?
वे बस स्क्रीन डीपीआई के आधार पर चित्र का आकार बदलते हैं लेकिन वे लेआउट की उपस्थिति नहीं बदलते हैं।
क्या मुझे स्क्रीन आकार के आधार पर लेआउट बदलना चाहिए, और चित्र घनत्व के अनुसार बदल जाएंगे जो वास्तव में दूसरा उदाहरण है, क्योंकि जैसे बटन अलग कहानी हैं, यदि वे एमडीपीआई में 50 x 50 पीएक्स हैं तो वे 100 x 100 पीएक्स होंगे xhdpi में।
और मुझे यही मिलता है।
बड़ी समस्या यह है कि स्क्रीन को अपने आप भरने वाली तस्वीर को अकेले कैसे रखा जाए और स्क्रीन के घुमावों और चौड़ाई और ऊंचाई को ध्यान में रखते हुए इसे कैसे लिया जाए।
तो यह एक लंबा सवाल था, आशा है कि मैंने आपको वह बताया जो आपको जानना चाहिए, इसी तरह के प्रश्न पहले ही पूछे जा चुके हैं लेकिन वे थोड़े पुराने हैं और कुछ हिस्सों में पुराने हैं, और वहां भी मुझे अभी भी वे सभी उत्तर नहीं मिले जो मैं देख रहा था इसलिए मुझे उम्मीद है कि मैं उन्हें यहां ढूंढ लूंगा।
आपकी मदद के लिए तत्पर हैं और अग्रिम धन्यवाद!

1
deva56 5 फरवरी 2019, 05:51

1 उत्तर

सबसे बढ़िया उत्तर

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

उदाहरण के लिए, यदि आप केंद्र में लोगो के साथ स्प्लैश स्क्रीन बनाने का प्रयास कर रहे हैं, तो आप ऐसा कुछ कर सकते हैं।

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

        <ImageView
                android:layout_gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/my_logo" />

</FrameLayout>

यह सभी उपकरणों/आकारों/अभिविन्यासों पर काम करेगा क्योंकि यह सिर्फ लोगो को केंद्र में रख रहा है।

लेआउट बनाते समय, केवल वर्तमान आधुनिक फ़ोन के औसत आकार पर ध्यान दें, लेकिन ध्यान रखें कि लोगों के पास छोटे उपकरण हों। संपत्ति के लिए अपने आधार के रूप में इसका उपयोग करें, और छोटे लोगों को शामिल करने का प्रयास करें, या वेक्टर छवियों का उपयोग करें।

और यदि आप एक लंबा दृश्य बना रहे हैं, तो उसे ScrollView में लपेटें ताकि वह छोटे उपकरणों पर स्क्रॉल कर सके।

मैं बहुत विशिष्ट मामलों के लिए केवल अन्य लेआउट निर्देशिकाओं (आकार या अभिविन्यास के लिए) का उपयोग करूंगा, जैसे कि जब आप पूरी तरह से बदलना चाहते हैं कि आपका लेआउट कैसा दिखता है।

उम्मीद है कि यह मदद करता है।

0
Advice-Dog 5 फरवरी 2019, 06:31