2016-06-23 11 views
28

क्यों RelativeLayout एंड्रॉइड खाली गतिविधि की डिफ़ॉल्ट लेआउट फ़ाइल में ConstraintLayout पर बदल दिया गया। मुझे यह जानने की जरूरत है कि हमें ConstraintLayout का उपयोग क्यों करना चाहिए, यह हमें अन्य लाभ प्रदान करता है।प्रतिबंधों के लेआउट के लिए क्यों जाएं क्योंकि हमारे पास पहले से ही संबंधित लेआउट है?

+29

क्योंकि यह नया है। और नई चीजें चमकदार हैं –

+2

यह अनिवार्य रूप से बेहतर 'सापेक्ष लयआउट' है। यह कई चीजें कर सकता है 'रिलेवेटिवआउट' नहीं कर सकता है और इसमें काफी बेहतर प्रदर्शन है। –

+0

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

उत्तर

18

Xaver Kapeller द्वारा प्रदान के रूप में - "ConstraintLayout का मुख्य उद्देश्य RelativeLayout की समस्याओं को ठीक करने के लिए है, और यह इतनी अच्छी तरह से यह करता है आप बहुत सी बातें है कि एक RelativeLayout साथ असंभव थे क्या कर सकते हैं और अगर आप सरल बना सकते हैं अपने।। आपके जैसा लेआउट पहले कभी नहीं हो सकता था। इसके अतिरिक्त, यह रिलेवेटलाइट के लंबे समय तक प्रदर्शन के मुद्दे को हल करता है। माप/लेआउट चरण के दौरान दोहरे कराधान। इसलिए हमें बेहतर प्रदर्शन, अधिक बहुमुखी प्रतिभा और एक अच्छे पैकेज में बहुत आसान लेआउट मिलते हैं। "

इसका उपयोग करने का एक अतिरिक्त लाभ यह है कि यह आपको ड्रैग और ड्रॉप स्टाइल एडिटर का उपयोग करके अपने लेआउट बनाने की अनुमति देता है, इस तरह रिलेवेटलाइट एक्सकोड में इंटरफ़ेस बिल्डर के समान नहीं हो सकता है।

बाधा लेआउट: यह नया लेआउट आपके ऐप के लिए एक लचीला लेआउट मैनेजर है जो आपको कई लेआउट घोंसले के बिना गतिशील उपयोगकर्ता इंटरफेस बनाने की अनुमति देता है। इसे एक समर्थन लाइब्रेरी के रूप में वितरित किया जाता है जो एंड्रॉइड स्टूडियो के साथ कसकर जोड़ता है और एपीआई लेवल 9 के अनुकूल है।

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

+3

नहीं कर सकता क्या आप मुझे कोई उदाहरण दे सकते हैं? जहां सापेक्ष लेआउट असफल रहा है या ConstraintLayout से अधिक समय/कोड लेता है? –

+0

मुझे इस उत्तर को लिंक किए गए प्रश्न में उत्तर से बेहतर पसंद है क्योंकि यह हाइलाइट करता है कि ConstraintLayout सापेक्ष लयआउट से बेहतर है और न केवल एक और स्वाद है। – AnthonyW

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