एंड्रॉइड 12 एक दोहरी फलक डिज़ाइन पेश करता है, जिसमें बाईं ओर एक स्थिर L0 मेनू और दाईं ओर एक सामग्री फलक है। यह सुविधा कई नए अनुकूलन विकल्प पेश करती है। यह पृष्ठ उन विशेषताओं का विवरण देता है और बताता है कि आप अपनी प्राथमिकताओं को कैसे अनुकूलित कर सकते हैं।
एकल फलक पर वापस लौटें
डिफ़ॉल्ट रूप से, कारसेटिंग्स अब दोहरे फलक दृश्य को प्रदर्शित करती है जब ऐप विंडो चौड़ाई में 1400dp से अधिक या उसके बराबर होती है और अन्यथा एकल फलक दृश्य प्रदर्शित करती है। किसी विशिष्ट डिवाइस के लिए इसे अनुकूलित करने के लिए, आवश्यक कॉन्फ़िगरेशन मानों को लक्षित करने के लिए रनटाइम रिसोर्स ओवरले (आरआरओ) का उपयोग करें:
कीमत | विवरण |
---|---|
config_global_force_single_pane | यदि संपूर्ण ऐप को एकल-फलक कॉन्फ़िगरेशन में चलाना है तो true पर सेट करें। |
config_homepage_fragment_class | मुखपृष्ठ के लिए आरंभिक खंड निर्दिष्ट करता है. दोहरे फलक में, इसका उपयोग सामग्री फलक में प्रारंभिक टुकड़े के लिए किया जाता है। एकल-फलक में, यह मुखपृष्ठ खंड होना चाहिए। |
हेडर कुंजियाँ
क्योंकि विभिन्न कारसेटिंग्स गतिविधियों में एक अनुकूलित आईए हो सकता है, अनुकूलन को सरल बनाने के लिए एक हेडर कुंजी मैपिंग प्रदान की जाती है। AndroidManifest.xml
में, दोहरे फलक का समर्थन करने वाली प्रत्येक गतिविधि के मेटाडेटा में TOP_LEVEL_HEADER_KEY
निर्दिष्ट है। यह मान res/values/header_keys.xml
में निर्दिष्ट कुंजी को इंगित करता है, जिसे शीर्ष-स्तरीय मेनू आइटम की वरीयता कुंजी पर मैप किया जाता है जिसके अंतर्गत प्रारंभिक खंड आता है। इसलिए, यदि किसी गतिविधि का प्रारंभिक खंड बदल दिया गया है या IA को इस तरह पुनर्व्यवस्थित किया गया है कि एक विशेष खंड एक अलग शीर्ष-स्तरीय प्राथमिकता के अंतर्गत आता है, तो header_keys.xml
फ़ाइल में प्रासंगिक मैपिंग को सही मान निर्दिष्ट करने के लिए अद्यतन किया जा सकता है .
गतिविधि लेआउट अनुकूलित करें
BaseCarSettingsActivity
का लेआउट res/layout/car_setting_activity
और इन अनुभागों में स्थित है:
कीमत | विवरण |
---|---|
top_level_menu | शीर्ष-स्तरीय मेनू खंड दोहरे फलक कॉन्फ़िगरेशन में दिखाया गया है। इस अनुभाग की चौड़ाई top_level_menu_width द्वारा निर्दिष्ट की गई है। इस दृश्य के चारों ओर एक चेसिस बेस लेआउट (टूलबार के साथ) लपेटा गया है। |
top_level_divider | लंबवत रेखा जो दो फलकों को विभाजित करती है और जिसकी चौड़ाई को आप top_level_divider_width के साथ अनुकूलित कर सकते हैं। |
fragment_container_wrapper | सामग्री फलक के लिए रैपर लेआउट (या एकल फलक कॉन्फ़िगरेशन में मुख्य फलक)। इस दृश्य के चारों ओर एक चेसिस बेसलेआउट (टूलबार के साथ) लपेटा गया है। |
settings_focus_parking_view | जरूरत पड़ने पर रोटरी फोकस बनाए रखने के लिए FocusParkingView का कस्टम कार्यान्वयन। |
fragment_container | मुख्य सामग्री कंटेनर. सामग्री अंश इसे लक्ष्य लेआउट के रूप में उपयोग करते हैं। |
restricted_message | UX-प्रतिबंधित अवरोधन दृश्य BaseFragment के उदाहरणों पर दिखाया जाएगा। |
चित्र 1. दोहरा फलक लेआउट
शीर्ष-स्तरीय प्राथमिकताएँ
शीर्ष-स्तरीय प्राथमिकताएँ कस्टम CarUiPreferences हैं जिनमें प्राथमिकता ऊँचाई और पृष्ठभूमि आकार को बदलने के लिए थोड़ा संशोधित लेआउट है। इन प्राथमिकताओं के स्वरूप को अनुकूलित करने के कई अलग-अलग तरीके हैं:
कीमत | विवरण |
---|---|
res/layout/top_level_preference.xml | संपूर्ण प्राथमिकता लेआउट को ओवरले करें. |
top_level_preference_min_height | शीर्ष-स्तरीय प्राथमिकता की न्यूनतम ऊंचाई. सामग्री के आधार पर (उदाहरण के लिए, एक उपशीर्षक मौजूद है), प्राथमिकताएँ इस मान से अधिक लंबी हो सकती हैं। |
top_level_preference_corner_radius | कोने की गोलाई की त्रिज्या. |
top_level_preference_background | शीर्ष-स्तरीय प्राथमिकताओं की पृष्ठभूमि जब वर्तमान में हाइलाइट नहीं की गई हो। |
top_level_preference_highlight | हाइलाइट किए जाने पर शीर्ष-स्तरीय प्राथमिकताओं की पृष्ठभूमि। |
शीर्ष-स्तरीय चिह्न
चित्र 2 दिखाता है कि कैसे शीर्ष-स्तरीय आइकन अब रंगीन पृष्ठभूमि आकार के अंदर एक वेक्टर आइकन से बने होते हैं। यह आकार वर्तमान में अंडाकार या आयताकार आकार का समर्थन करने के लिए कॉन्फ़िगर किया गया है। डिफ़ॉल्ट रूप से, आकार अंडाकार पर सेट होता है।
डिफ़ॉल्ट को बदलने के लिए, config_top_level_icon_shape
में मान को संशोधित करें (जहाँ 0 आयत है और 1 अंडाकार है)। आइकन पृष्ठभूमि आकार से top_level_foreground_icon_inset
द्वारा अग्रभूमि आइकन को इनसेट करके बनाए जाते हैं। प्रत्येक शीर्ष-स्तरीय आइकन में res/values/colors.xml
में एक अग्रभूमि रंग निर्दिष्ट होता है और res/color
फ़ोल्डर में एक पृष्ठभूमि रंग निर्दिष्ट होता है।
एक अनुकूलित स्वरूप बनाने के लिए, आप सभी रंग मानों को ओवरराइड कर सकते हैं।
चित्र 2. शीर्ष-स्तरीय प्राथमिकता घटक
इंजेक्टेड प्राथमिकताओं के लिए आइकन जो config_top_level_injection_categories
द्वारा निर्दिष्ट श्रेणियों में आते हैं, उन्हें शीर्ष-स्तरीय आइकन के रूप में भी माना जाता है। प्रदान किए गए आइकन समान मान से इनसेट हैं और उसी आकार में हैं जैसा कि अन्य सभी शीर्ष-स्तरीय आइकन के लिए निर्दिष्ट है (ऊपर देखें)। हालाँकि, पृष्ठभूमि इस क्रम में निम्नलिखित विशेषताओं को देखकर निर्धारित की जाती है:
-
com.android.settings.bg.argb
इंजेक्शन ऐप से मेटा डेटा। -
com.android.settings.bg.hint
इंजेक्शन ऐप से मेटा डेटा। -
top_level_injected_default_background
res/values/colors.xml
में निर्दिष्ट।
इंजेक्टिंग ऐप डेटा को अनदेखा करने और हमेशा डिफ़ॉल्ट पृष्ठभूमि का उपयोग करने के लिए, config_top_level_injection_background_always_use_default
को true
पर सेट करें।