जवाबों:
वे एक ही चीज़ हैं (एपीआई स्तर 8+ में)। का उपयोग करें match_parent
।
FILL_PARENT (एपीआई स्तर 8 और उच्चतर में MATCH_PARENT का नाम), जिसका अर्थ है कि यह दृश्य अपने माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहता है
...
fill_parent
: दृश्य उसके माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहिए। यह स्थिरांक एपीआई स्तर 8 से शुरू होता है और इसके द्वारा प्रतिस्थापित किया जाता हैmatch_parent
।
http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
-1
। मुझे लगता है कि आप इसके बारे में बेहतर महसूस करते हैं, मुझे इसमें या तो इंप्रूवमेंट नहीं मिलती ... :-)
-1
। आपको त्रुटि मिलती है क्योंकि पुराने प्लेटफ़ॉर्म को बहुत समान नाम के नए नाम के बारे में नहीं पता है।
भ्रम से बचने के लिए Google ने नाम बदल दिया।
पुराने नाम के साथ समस्या fill parent
यह थी कि इसका अर्थ माता-पिता के आयामों को प्रभावित करना है, जबकि match parent
बेहतर परिणाम के व्यवहार का वर्णन करता है - माता-पिता के साथ आयाम से मेल खाता है।
दोनों स्थिरांक -1
अंत में हल करते हैं , और इसलिए ऐप में समान व्यवहार होता है। विडंबना यह है कि चीजों को स्पष्ट करने के लिए किया गया यह नाम परिवर्तन लगता है कि इसे खत्म करने के बजाय भ्रम को जोड़ा गया है।
आमतौर पर कोई अंतर नहीं है, Google ने केवल एपीआई स्तर 8 (एंड्रॉइड 2.2) से fill_parent से मैच_परेंट में नाम बदल दिया है। FILL_PARENT अभी भी संगतता कारण के लिए उपलब्ध है।
LayoutParams.FILL_PARENT
और LayoutParams.MATCH_PARENT
दोनों का मूल्य -1 है। सुनिश्चित करें कि क्या भरा हुआ है जो माता-पिता से मैच करने के लिए बदल सकता है
अधिकांश के बाद से phones are >= Android 2.2
.. आपको भविष्य की संगतता के लिए मैच पैरेंट का उपयोग करना चाहिए ... निश्चित नहीं कि वे पुराने फिल पेरेंट को कब बंद करेंगे!
अनुकूलता के लिए, API 8 उपकरणों का समर्थन करते समय, fill_parent से चिपकना बेहतर है, अर्थात। लेकिन अगर आपका ऐप API 8 और ऊपर की तरफ लक्षित करता है, तो आपको इसके बजाय match_parent का उपयोग करना चाहिए।
FILL_PARENT
वंचित किया गया है (जैसा कि ऊपर मैट बॉल द्वारा उल्लेख किया गया है), तो आगे संगतता के लिए एकमात्र विकल्प है MATCH_PARENT
।
FILL_PARENT
एपीआई स्तर 8 में पदावनत किया गया है और MATCH_PARENT
उच्च स्तरीय एपीआई का उपयोग किया गया है
बस इसे वास्तविक कार्रवाई के करीब एक नाम देने के लिए । "fill_parent"
शेष स्थान नहीं भरता है क्योंकि नाम का अर्थ होगा (इसके लिए आप वजन विशेषता का उपयोग करते हैं)। इसके बजाय, यह अपने लेआउट माता-पिता के रूप में ज्यादा जगह लेता है। इसलिए नया नाम है"match_parent"
दोनों में समान कार्यक्षमता है केवल अंतर यह है कि fill_parent का उपयोग API स्तर 8 तक किया जाता है और मैच_parent का उपयोग API स्तर 8 या उच्चतर स्तर के बाद किया जाता है।
जब आप लेआउट width
और संपत्ति के height
रूप match_parent
में सेट करते XML
हैं, तो यह उस संपूर्ण क्षेत्र पर कब्जा कर लेगा जो माता-पिता के पास है, यानी यह माता-पिता जितना बड़ा होगा।
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
हरे माता-पिता लाल हैं और बच्चा हरा है। बच्चा सभी क्षेत्र पर कब्जा करता है। क्योंकि यह है width
और height
कर रहे हैं match_parent
।
नोट: यदि माता-पिता को एक गद्दी लगाई जाती है तो उस स्थान को शामिल नहीं किया जाएगा।
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0"
android:paddingTop="20dp"
android:paddingBottom="10dp">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
तो TextView hight = 300dp (पैरेंट हाइट) - (20 (पेडिंगटॉप) +10 (पेडिंगबॉटम)) = (300 - 30) dp = 270 dp
fill_parent
का पिछला नाम है match_parent
एपीआई स्तर 8 और उच्चतर के लिए fill_parent
इसका नाम बदल दिया गया है match_parent
और fill_parent
अब इसे हटा दिया गया है।
तो fill_parent
और match_parent
समान हैं।
यह दृश्य इसके माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहिए। यह स्थिरांक एपीआई स्तर 8 से शुरू होता है और {@code match_parent} द्वारा प्रतिस्थापित किया जाता है।
मैच_परेंट, जिसका अर्थ है कि यह दृश्य अपने माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहता है।
wra_content, जिसका अर्थ है कि यह दृश्य अपनी सामग्री को जोड़ने के लिए बस इतना बड़ा होना चाहता है (प्लस पैडिंग)
बेहतर चित्रण के लिए, मैंने एक नमूना लेआउट बनाया है जो इस अवधारणा को प्रदर्शित करता है। इसका प्रभाव देखने के लिए, मैंने प्रत्येक textView सामग्री की एक सीमा जोड़ी।
"मैच पैरेंट" टेक्स्ट व्यू कंटेंट में, हम देख सकते हैं कि यह लेआउट की चौड़ाई पूरी तरह से फैली हुई है।
लेकिन हम "Wrap Content" टेक्स्ट व्यू कंटेंट में देख सकते हैं, यह लेआउट की सामग्री (Wrap Content) की लंबाई से लिपटी हुई है।
match_parent
और fill_parent
समान गुण हैं, जिसका उपयोग पूर्ण स्क्रीन में क्षैतिज या लंबवत रूप से किसी दृश्य की चौड़ाई या ऊँचाई को परिभाषित करने के लिए किया जाता है।
इन गुणों का उपयोग android xml फ़ाइलों में इस तरह किया जाता है।
android:layout_width="match_parent"
android:layout_height="fill_parent"
या
android:layout_width="fill_parent"
android:layout_height="match_parent"
fill_parent
पिछले संस्करणों में इस्तेमाल किया गया था, लेकिन अब इसे हटा दिया गया है और इसकी जगह ले ली गई है match_parent
। मुझे उम्मीद है कि यह आपकी मदद करेगा।
fill_parent: यह दृश्य उसके माता-पिता जितना बड़ा होना चाहिए।
अब यह सामग्री fill_parent को हटा दिया गया है और match_parent द्वारा बदल दिया गया है।
FILL_PARENT को एपीआई स्तर 8 में MATCH_PARENT नाम दिया गया था और इसका मतलब यह है कि यह दृश्य अपने माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहता है - Google
FILL_PARENT
एपीआई स्तर 8 और उच्चतर से हटा दिया गया है और इसे ऊपरी संस्करणों के लिए बदल दिया गया है MATCH_PARENT
दोनों समान हैं FILL_PARENT
और MATCH_PARENT
, FILL_PARENT
एपीआई स्तर 8 से कम संस्करण में उपयोग किया गया था और MATCH_PATENT 8 से अधिक उच्च एपीआई स्तर में उपयोग किया जाता है।
FILL_PARENT
( MATCH_PARENT
एपीआई स्तर 8 और उच्चतर में बदला हुआ), जिसका अर्थ है कि यह दृश्य अपने माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहता है
fill_parent
: दृश्य उसके माता-पिता (माइनस पैडिंग) जितना बड़ा होना चाहिए। यह स्थिरांक एपीआई स्तर 8 से शुरू होता है और इसके द्वारा प्रतिस्थापित किया जाता है match_parent
।
अधिक जानकारी के लिए कृपया इस पृष्ठ पर जाएँ
1. माचिस_परेंट
जब आप लेआउट की चौड़ाई और ऊंचाई को match_parent के रूप में सेट करते हैं, तो यह उस संपूर्ण क्षेत्र पर कब्जा कर लेगा, जो माता-पिता के पास है, यानी यह माता-पिता जितना बड़ा होगा।
नोट : यदि माता-पिता को एक गद्दी लगाई जाती है तो उस स्थान को शामिल नहीं किया जाएगा।
जब हम डिफ़ॉल्ट रूप से एक लेआउट बनाते हैं। हमारे पास डिफ़ॉल्ट के रूप में RelativeLayout होता है, तो Android के साथ डिफ़ॉल्ट पैरेंट देखें: Layout_width = "match_parent" और android: Layout_height = "match_parent" अर्थात यह मोबाइल स्क्रीन की पूरी चौड़ाई और ऊंचाई पर कब्जा कर लेता है।
यह भी ध्यान दें कि पैडिंग सभी पक्षों पर लागू होती है,
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
अब एक उप-दृश्य रेखीयआउट को जोड़ने देता है और इसके लेआउट_ एक्सपोज़र = "match_parent" और layout_height = "match_parent" को सेट करता है, चित्रमय दृश्य कुछ इस तरह प्रदर्शित होता है;
match_parent_example
कोड
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.code2care.android.togglebuttonexample.MainActivity" >
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="11dp"
android:background="#FFFFEE"
android:orientation="vertical" >
2. fill_parent:
यह मैच_परेंट के समान है, fill_parent को API स्तर 8 में मूल्यह्रास किया गया था। इसलिए यदि आप API स्तर 8 या उससे ऊपर का उपयोग कर रहे हैं, तो आपको fill_parent का उपयोग करने से बचना चाहिए
हम उसी तरह से चरणों का पालन करते हैं जैसे हमने match_parent के लिए किया था, इसके बजाय हर जगह fill_parent का उपयोग करें।
आप देखेंगे कि fill_parent और माता-पिता दोनों के व्यवहार में कोई अंतर नहीं है।