एंड्रॉइड में गुरुत्वाकर्षण और लेआउट_ ग्रेविटी के बीच अंतर क्या है?


1328

मुझे पता है कि हम निम्नलिखित मूल्यों को android:gravityऔर android:layout_gravityगुणों को निर्धारित कर सकते हैं:

  1. center
  2. center_vertical
  3. center_horizontal, आदि।

लेकिन मैं इन दोनों को लेकर उलझन में हूं।

android:gravityऔर के उपयोग के बीच क्या अंतर है android:layout_gravity?


265
याद रखने की आसान ट्रिक: "लेआउट-ग्रेविटी" को "ले-आउट-ग्रेविटी" के रूप में लें
विष्णु हरिदास

6
center == center_vertical | Center_horiolet
यौषा अलाय्यूब

4
इन वीडियो ने मुझे अंतर समझने में बहुत मदद की: youtube.com/watch?v=DxfYeAUd238 youtube.com/watch?v=1FyAIWLVcTc
Roni Castro

ImageViewलगता है की तुलना में अलग व्यवहार करते हैं TextView
samis

जवाबों:


1346

उनके नामों को आपकी मदद करनी चाहिए:

  • android:gravityइस पर उपयोग की जाने वाली सामग्री (अर्थात इसके साक्षात्कार) का गुरुत्वाकर्षण सेट करता है View
  • android:layout_gravityअपने माता-पिता के सापेक्ष Viewया उसके गुरुत्वाकर्षण को सेट करता है Layout

और एक उदाहरण यहाँ है


88
मूल रूप से, सब कुछ कुछ को layout_परिभाषित करता है जो बाहर के तत्वों को प्रभावित करता है।
त्रिकोणीय 3

29
देखिए, मुझे यह मजेदार लग रहा है, क्योंकि अगर मैं सिर्फ नामों से दूर जाता हूं, तो मेरा अंतर्ज्ञान चारों ओर का रास्ता है। हर बार, मुझे लगता है कि "लेआउट_ग्रेविटी" का अर्थ है "यह देखने के लिए कि यह सामग्री कैसे दिखाई देती है" के लिए गुरुत्वाकर्षण ", और" गुरुत्वाकर्षण "" जहां यह दृश्य गुरुत्वाकर्षण के लिए "" है।
ओगरे

15
तो क्या होता है अगर android:gravityबाईं ओर सेट किया जाता है और उसके बच्चों android:layout_gravityको दाईं ओर सेट किया जाता है? बच्चों को किस तरफ संरेखित किया जाएगा?
थुपतेन

2
जैसा कि @Suragch ने उनके उत्तर पर टिप्पणी की, लेआउट_ग्रेविटी केवल LinearLayout और FrameLayout में काम करती है। हालांकि LinearLayout को इसमें बाधा है।
मार्को लुग्लियो

1
@ बहुत अच्छा सवाल है। मुझे लगता है कि एक प्रबल होगा (मुझे लगता है कि बच्चों के लेआउट_ग्रेविटी) और अन्य एक ही प्रचलित के लिए डिफ़ॉल्ट है।
ट्रिलियनियन डेस

522

अंदर बाहर

  • gravityदृश्य के अंदर सामग्री को व्यवस्थित करता है ।
  • layout_gravityस्वयं के बाहर दृश्य की स्थिति को व्यवस्थित करता है।

कभी-कभी यह तस्वीर देखने में भी मदद करता है। हरे और नीले रंग हैं TextViewsऔर अन्य दो पृष्ठभूमि रंग हैं LinearLayouts

यहां छवि विवरण दर्ज करें

टिप्पणियाँ

  • layout_gravityएक में विचारों के लिए काम नहीं करता है RelativeLayout। एक में विचारों के लिए इसका इस्तेमाल करते हैं LinearLayoutया FrameLayout। अधिक विवरण के लिए मेरा पूरक उत्तर देखें।
  • दृश्य की चौड़ाई (या ऊँचाई) उसकी सामग्री से अधिक होनी चाहिए। अन्यथा gravityकोई प्रभाव नहीं पड़ेगा। इस प्रकार, wrap_contentऔर gravityएक साथ अर्थहीन हैं।
  • दृश्य की चौड़ाई (या ऊँचाई) माता-पिता से कम होनी चाहिए। अन्यथा layout_gravityकोई प्रभाव नहीं पड़ेगा। इस प्रकार, match_parentऔर layout_gravityएक साथ अर्थहीन हैं।
  • layout_gravity=centerके रूप में ही लग रहा है layout_gravity=center_horizontalयहाँ, क्योंकि वे एक ऊर्ध्वाधर रैखिक लेआउट में हैं। आप इस मामले में लंबवत केंद्र नहीं कर सकते, इसलिए layout_gravity=centerकेवल क्षैतिज रूप से केंद्र होते हैं।
  • यह उत्तर केवल सेटिंग के साथ gravityऔर layout_gravityलेआउट के भीतर के विचारों से निपटा जाता है । यह देखने के लिए कि जब आप gravityस्वयं अभिभावक लेआउट को सेट करते हैं तो क्या होता है, तो ऊपर दिए गए पूरक उत्तर को देखें। (सारांश: gravityएक पर अच्छी तरह से काम नहीं करता है RelativeLayoutलेकिन एक के साथ उपयोगी हो सकता है LinearLayout।)

तो याद रखें, लेआउट _ ग्रेविटी इसके लेआउट में एक दृश्य की व्यवस्था करता है । गुरुत्वाकर्षण दृश्य के अंदर सामग्री को व्यवस्थित करता है।

एक्सएमएल

यहाँ आपके संदर्भ के लिए उपरोक्त छवि के लिए xml है:

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="#e3e2ad"
        android:orientation="vertical" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:textSize="24sp"
            android:text="gravity=" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:background="#bcf5b1"
            android:gravity="left"
            android:text="left" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:background="#aacaff"
            android:gravity="center_horizontal"
            android:text="center_horizontal" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:background="#bcf5b1"
            android:gravity="right"
            android:text="right" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:background="#aacaff"
            android:gravity="center"
            android:text="center" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:background="#d6c6cd"
        android:orientation="vertical" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:textSize="24sp"
            android:text="layout_gravity=" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_gravity="left"
            android:background="#bcf5b1"
            android:text="left" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_gravity="center_horizontal"
            android:background="#aacaff"
            android:text="center_horizontal" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_gravity="right"
            android:background="#bcf5b1"
            android:text="right" />

        <TextView
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_gravity="center"
            android:background="#aacaff"
            android:text="center" />

    </LinearLayout>

</LinearLayout>

सम्बंधित


यह नेत्रहीन देखने के बाद अधिक आसान लगता है, धन्यवाद सुरगच।
हरितसिंह गोहिल

466

अंतर

android:layout_gravityदृश्य के बाहर गुरुत्वाकर्षण है। उस दिशा को निर्दिष्ट करता है जिसमें दृश्य को अपने माता-पिता की सीमा को स्पर्श करना चाहिए।

android:gravityउस दृश्य के अंदर का गुरुत्वाकर्षण है। निर्दिष्ट करता है कि इसकी सामग्री किस दिशा में संरेखित होनी चाहिए।

HTML / CSS समकक्ष

Android                 | CSS
————————————————————————+————————————
android:layout_gravity  | float
android:gravity         | text-align

याद रखने में आपकी मदद करने की आसान ट्रिक

layout-gravity"ले-आउट-ग्रेविटी" के रूप में लें ।


यह अधिक समझ में आता है जब आपके पास वेब डेवलपमेंट बैकग्राउंड होता है।
हरितसिंह गोहिल

40

संक्षिप्त उत्तर: कंटेनर के सभी बच्चे के विचारों के गुरुत्वाकर्षण का उपयोग करना android:gravityया setGravity()नियंत्रित करना; एक कंटेनर में एक व्यक्ति को देखने के गुरुत्वाकर्षण का उपयोग android:layout_gravityया setLayoutParams()नियंत्रित करने के लिए।

लंबी कहानी: नियंत्रण गुरुत्वाकर्षण के जैसे एक रेखीय लेआउट कंटेनर में LinearLayoutया RadioGroup, वहाँ दो दृष्टिकोण हैं:

1) LinearLayoutकंटेनर के सभी बच्चे के विचारों के गुरुत्वाकर्षण को नियंत्रित करने के लिए (जैसा कि आपने अपनी पुस्तक में किया था), कोड में लेआउट XML फ़ाइल या विधि में उपयोग android:gravity(नहीं android:layout_gravity) setGravity()

2) अपने कंटेनर में एक बच्चे के दृश्य के गुरुत्वाकर्षण को नियंत्रित करने के लिए, android:layout_gravityXML विशेषता का उपयोग करें । कोड में, किसी LinearLayout.LayoutParamsको दृश्य प्राप्त करने और उसके गुरुत्वाकर्षण को निर्धारित करने की आवश्यकता होती है । यहां एक कोड उदाहरण दिया गया है जो क्षैतिज रूप से उन्मुख कंटेनर में नीचे की ओर एक बटन सेट करता है:

import android.widget.LinearLayout.LayoutParams;
import android.view.Gravity;
...

Button button = (Button) findViewById(R.id.MyButtonId);
// need to cast to LinearLayout.LayoutParams to access the gravity field
LayoutParams params = (LayoutParams)button.getLayoutParams(); 
params.gravity = Gravity.BOTTOM;
button.setLayoutParams(params);

क्षैतिज LinearLayoutकंटेनर के लिए, उसके बच्चे के दृश्य के क्षैतिज गुरुत्वाकर्षण को एक के बाद एक छोड़ दिया जाता है और इसे बदला नहीं जा सकता है। स्थापना android:layout_gravityकरने के लिए center_horizontalकोई प्रभाव नहीं है। डिफ़ॉल्ट ऊर्ध्वाधर गुरुत्व केंद्र (या Center_vertical) है और इसे ऊपर या नीचे बदला जा सकता है। दरअसल डिफ़ॉल्ट layout_gravityमान है, -1लेकिन Android ने इसे लंबवत रूप से केंद्र में रखा है।

एक क्षैतिज रैखिक कंटेनर में बच्चे के विचारों की क्षैतिज स्थिति को बदलने के लिए, कोई भी layout_weightबच्चे के दृश्य के मार्जिन और पैडिंग का उपयोग कर सकता है ।

इसी तरह, वर्टिकल व्यू ग्रुप कंटेनर के लिए, इसके चाइल्ड व्यू का वर्टिकल ग्रेविटी एक-दूसरे के ऊपर एक-दूसरे से जुड़ा होता है और इसे बदला नहीं जा सकता। डिफ़ॉल्ट क्षैतिज गुरुत्वाकर्षण केंद्र (या center_horizontal) है और इसे बाएं या दाएं में बदला जा सकता है।

दरअसल, एक बच्चे के दृश्य जैसे कि बटन में android:gravityXML विशेषता और setGravity()अपने बच्चे के विचारों को नियंत्रित करने की विधि भी है - इसमें पाठ। Button.setGravity(int)इस से जुड़ा हुआ है developer.android.com प्रविष्टि


36

लेआउट_गैविटी को जो मैं इकट्ठा कर सकता हूं, वह उसके माता-पिता और गुरुत्वाकर्षण के अंदर उस दृश्य का गुरुत्वाकर्षण है है उस दृश्य के अंदर बच्चों का है।

मुझे लगता है कि यह सही है लेकिन यह पता लगाने का सबसे अच्छा तरीका है चारों ओर खेलना।



12

यदि हम किसी दृश्य के अंदर सामग्री का गुरुत्वाकर्षण सेट करना चाहते हैं तो हम "android: गुरुत्वाकर्षण" का उपयोग करेंगे, और यदि हम इस दृश्य के गुरुत्व (संपूर्ण रूप में) को उसके मूल दृश्य के भीतर सेट करना चाहते हैं तो हम "android:" का उपयोग करेंगे। layout_gravity "।


8

बस मैंने सोचा कि मैं अपनी व्याख्या यहां जोड़ूंगा - आईओएस पर एक पृष्ठभूमि से आ रहा है, इस तरह से मैंने दो को आईओएस के संदर्भ में आंतरिक रूप दिया है: "लेआउट ग्रेविटी" पर्यवेक्षक में आपकी स्थिति को प्रभावित करती है। "गुरुत्वाकर्षण" आपके भीतर आपके साक्षात्कार की स्थिति को प्रभावित करता है। एक और तरीका बताया, लेआउट ग्रेविटी आपको अपने आप को तैनात करती है जबकि गुरुत्वाकर्षण आपके बच्चों को तैनात करता है।


7

वहाँ कई अंतर नहीं है gravityऔर layout-gravity। मैं इन 2 अवधारणाओं के बारे में अपने अनुभव की व्याख्या करने जा रहा हूं ( सभी जानकारी मुझे मेरे अवलोकन और कुछ वेबसाइटों के कारण मिली )।

गुरुत्वाकर्षण और लेआउट-गुरुत्व का उपयोग FrameLayout.....

ध्यान दें:-

  1. गुरुत्वाकर्षण का उपयोग दृश्य सामग्री के अंदर किया जाता है क्योंकि कुछ उपयोगकर्ता के पास इसका उत्तर है और यह सभी के लिए समान है ViewGroup Layout

  2. Layout-gravity इसका उपयोग पेरेंट व्यू के साथ किया जाता है क्योंकि कुछ उपयोगकर्ता के पास इसका उत्तर है।

  3. Gravity and Layout-gravityहै और अधिक उपयोगी काम के साथ FrameLayoutबच्चे। We can't use Gravity and Layout-gravityफ़्रेमलाईट के टैग में ...।

  4. हम चाइल्ड व्यू को किसी भी FrameLayoutउपयोग में सेट कर सकते हैं layout-gravity

  5. हम हर एक FrameLayout अंदर गुरुत्वाकर्षण के मूल्य का उपयोग कर सकते हैं (उदाहरण के लिए: - center_vertical, center_horizontal, center, top, आदि), लेकिन यह अन्य ViewGroup लेआउट के साथ संभव नहीं है।

  6. FrameLayoutपूरी तरह से काम कर रहा है Layout-gravity। उदाहरण: - यदि आप काम करते हैं FrameLayoutतो आपको नया दृश्य जोड़ने के लिए पूरे लेआउट को बदलने की आवश्यकता नहीं है । आप बस इसमें अंतिम के रूप में दृश्य जोड़ते हैंFrameLayout और उसे Layout-gravityमूल्य के साथ देते हैं । ( यह फ्रेमवर्क के साथ लेआउट-ग्रेविटी का विस्तार है )।

उदाहरण पर गौर करें ......

<?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">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:textSize="25dp"
        android:background="#000"
        android:textColor="#264bd1"
        android:gravity="center"
        android:layout_gravity="center"
        android:text="Center Layout Gravity"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:textColor="#1b64b9"
        android:gravity="bottom"
        android:layout_gravity="bottom|center"
        android:text="Bottom Layout Gravity" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:textColor="#d75d1c"
        android:gravity="top"
        android:layout_gravity="top|center"
        android:text="Top Layout Gravity"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginTop="100dp"
        android:textColor="#d71f1c"
        android:gravity="top|right"
        android:layout_gravity="top|right"
        android:text="Top Right Layout Gravity"/>


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginBottom="100dp"
        android:textColor="#d71cb2"
        android:layout_gravity="bottom"
        android:gravity="bottom"
        android:text="Top Left Layout Gravity"/>

</FrameLayout>

आउटपुट: -

G1

LinearLayout में गुरुत्वाकर्षण और लेआउट-गुरुत्वाकर्षण का उपयोग .....

Gravityऊपर के समान काम करना लेकिन यहाँ अंतर यह है कि हम अंदर गुरुत्वाकर्षण का उपयोग कर सकते हैं LinearLayout Viewऔर RelativeLayout Viewजो संभव नहीं है FrameLayout View

ओरिएंटेशन वर्टिकल के साथ लिनियरलैटआउट ...।

नोट: - यहाँ हम उस के केवल 3 मान सेट कर सकते layout_gravityहै ( left| right| | center(इसे भी कहा जाता है center_horizontal))।

उदाहरण पर गौर करें: -

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

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="100dp"
        android:textSize="25dp"
        android:background="#000"
        android:textColor="#264bd1"
        android:gravity="center"
        android:layout_gravity="center_horizontal"
        android:text="Center Layout Gravity \nor \nCenter_Horizontal"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginTop="20dp"
        android:textColor="#d75d1c"
        android:layout_gravity="right"
        android:text="Right Layout Gravity"/>


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="80dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginBottom="100dp"
        android:textColor="#d71cb2"
        android:layout_gravity="left"
        android:layout_marginTop="20dp"
        android:gravity="bottom"
        android:text="Left Layout Gravity"/>

</LinearLayout>

आउटपुट: -

G2

ओरिएंटेशन हॉरिजॉन्टल के साथ लिनियरलैटआउट ...।

नोट: - यहाँ हम layout_gravityउस के 3 मान भी सेट कर सकते हैं ( top| bottom| | center(इसे भी कहा जाता है center_vertical))।

उदाहरण पर गौर करें: -

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

    <TextView
        android:layout_width="120dp"
        android:layout_height="100dp"
        android:textSize="25dp"
        android:background="#000"
        android:textColor="#264bd1"
        android:gravity="center"
        android:layout_gravity="bottom"
        android:text="Bottom \nLayout \nGravity"/>

    <TextView
        android:layout_width="120dp"
        android:layout_height="100dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginTop="20dp"
        android:textColor="#d75d1c"
        android:layout_gravity="center"
        android:text="Center \nLayout \nGravity"/>


    <TextView
        android:layout_width="150dp"
        android:layout_height="100dp"
        android:textSize="25dp"
        android:background="#000"
        android:layout_marginBottom="100dp"
        android:textColor="#d71cb2"
        android:layout_gravity="left"
        android:layout_marginTop="20dp"
        android:text="Left \nLayout \nGravity"/>

</LinearLayout>

उत्पादन: -

G3

नोट: - हम उपयोग नहीं कर सकते layout_gravityमें RelativeLayout Viewsहैं, लेकिन हम उपयोग कर सकते हैं gravityसेट करने के लिए RelativeLayoutएक ही स्थिति के लिए बच्चे की ....


1
यदि आप textColorसभी में सफेद सेट करते हैं viewतो यह बहुत अच्छा होगा। : डी
प्रतीक बुटानी

क्या आपको यकीन है? यह काला और सफेद दिखाई देगा, इसलिए मैंने हर दृश्य के लिए अलग रंग का उपयोग किया।
सुशीललाल

6

यह याद रखने की एक आसान तरकीब है कि पृथ्वी के अंदर हमारे लिए गुरुत्वाकर्षण लागू होता है। तो, android:gravityके लिए है अंदर दृश्य।

Rememeber बाहर में रखना बाहर _gravity जो मदद मिलेगी आपको लगता है कि याद करने के लिए android:layout_gravityको उल्लेख करता है बाहर दृश्य


5

मैंने संदीप के ब्लॉग पर कुछ देखा, जो मुझे याद नहीं था, मैंने अपनी समस्या को ठीक कर लिया। उन्होंने कहा कि layout_gravityसाथ काम नहीं करता हैLinearLayout

यदि आप एक का उपयोग कर रहे हैं LinearLayoutऔर गुरुत्वाकर्षण सेटिंग्स आपको पागल कर रही हैं (मेरी तरह), तो कुछ और पर स्विच करें।

मैं वास्तव में RelativeLayoutतब इस्तेमाल किया layout_alignParentLeftऔर layout_alignParentRight2 पर स्विच करने के TextViewलिए उन्हें एक लाइन पर पाने के लिए दूर छोड़ दिया और दूर सही जाने के लिए शामिल थे।


4

दोनों के बीच बुनियादी अंतर यह है कि-

Android: गुरुत्वाकर्षण का उपयोग दृश्य के बाल तत्वों के लिए किया जाता है।

एंड्रॉइड: लेआउट_ग्रेविटी का उपयोग इस तत्व के लिए मूल दृश्य के संबंध में किया जाता है।


3

android:gravityयह निर्दिष्ट करने के लिए उपयोग किया जाता है कि ऑब्जेक्ट के भीतर ऑब्जेक्ट की सामग्री को कैसे रखा जाए। दूसरे शब्द में, एंड्रॉइड: गुरुत्वाकर्षण का उपयोग दृश्य की सामग्री के गुरुत्वाकर्षण को निर्दिष्ट करने के लिए किया जाता है।

android:layout_gravity एक अभिभावक है जो बच्चा अपने माता-पिता को आपूर्ति कर सकता है, अपने माता-पिता के भीतर के दृश्य को गुरुत्वाकर्षण को निर्दिष्ट करने के लिए।

अधिक जानकारी के लिए आप यहां जा सकते हैं

http://developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html


2
मुझे लगता है कि नए उत्तर की कोई आवश्यकता नहीं है क्योंकि पहले से ही कई उत्तर पोस्ट किए गए हैं और लगभग उसी सामग्री को कवर किया गया है!
परेश मेयानी

3

ग्रेविटी: आपको कंटेंट को कंटेनर के अंदर ले जाने की अनुमति देता है। (उप-विचार कैसे रखा जाएगा)।

जरूरी: (उपलब्ध स्थान के भीतर एक्स-एक्सिस या वाई-एक्सिस के साथ मोवे)।

उदाहरण: मान लीजिए कि यदि आप LinearLayout (ऊंचाई: match_parent, Width: match_parent) के साथ मूल स्तर के तत्व के रूप में काम करते हैं, तो आपके पास पूर्ण फ्रेम स्थान उपलब्ध होगा; और बच्चे के विचार कहते हैं 2 TextViews (ऊंचाई: wra_content, चौड़ाई: wra_content) LinearLayout के अंदर माता-पिता पर गुरुत्वाकर्षण के लिए इसी मूल्यों का उपयोग करके x / y अक्ष के साथ चारों ओर ले जाया जा सकता है।

Layout_Gravity: आपको केवल एक्स-अक्ष के साथ मूल गुरुत्व व्यवहार को ओवरराइड करने की अनुमति देता है।

जरूरी: (उपलब्ध स्थान के भीतर एक्स-एक्सिस के साथ MOVE [ओवरराइड])।

उदाहरण: यदि आप पिछले उदाहरण को ध्यान में रखते हैं, तो हमें पता है कि गुरुत्वाकर्षण ने हमें x / y अक्ष के साथ स्थानांतरित करने में सक्षम किया है, अर्थात; LinearLayout के अंदर TextViews रखें। मान लीजिए कि केवल रैखिकलेयूट गुरुत्वाकर्षण को निर्दिष्ट करता है: केंद्र; प्रत्येक टेक्स्ट व्यू का अर्थ लंबवत और क्षैतिज रूप से केंद्र होना चाहिए। अब यदि हम चाहते हैं कि TextView में से कोई एक बाईं / दाईं ओर जाए, तो हम TextView पर लेआउट_गैविटी का उपयोग करके निर्दिष्ट गुरुत्व व्यवहार को ओवरराइड कर सकते हैं।

बोनस: यदि आप गहराई से खुदाई करते हैं, तो आपको पता चलेगा कि TextView के भीतर का पाठ उप-दृश्य के रूप में कार्य करता है; इसलिए यदि आप TextView पर गुरुत्वाकर्षण लागू करते हैं, तो TextView के अंदर का पाठ घूम जाएगा। (पूरी अवधारणा यहां भी लागू होती है)


1

गुरुत्वाकर्षण का उपयोग दृश्यों में पाठ संरेखण सेट करने के लिए किया जाता है, लेकिन लेआउट_गैविटी का उपयोग विचारों को स्वयं सेट करने के लिए किया जाता है। यदि आप EditText में लिखे गए पाठ को संरेखित करना चाहते हैं, तो गुरुत्वाकर्षण का उपयोग करें और आप इस editText या किसी बटन या किसी दृश्य को संरेखित करना चाहते हैं तो लेआउट का उपयोग करें, तो इसका बहुत ही सरल उदाहरण दें।


1

गुरुत्वाकर्षण : का उपयोग साधारण दृश्य जैसे टेक्स्टव्यू, एडिटेक्स आदि के लिए किया जाता है।

लेआउट_ग्रेविटी : का उपयोग केवल वर्तमान दृश्य के लिए किया जाता है, इसके संदर्भ में गुरुत्व संबंधी लेआउट या फ्रेमलैट जैसे रिश्तेदार माता-पिता का दृश्य केंद्र या अपने माता-पिता के किसी अन्य गुरुत्वाकर्षण को देखने के लिए उपयोग किया जाता है।


लेआउट_ग्रेविटी: इसका उपयोग केवल वर्तमान माता-पिता के संदर्भ में गुरुत्वाकर्षण के लिए किया जाता है, अन्य माता-पिता के संदर्भ में नहीं, अन्य विचारों के संदर्भ में।
चिंतक पटेल

0
android:gravity

इसका निर्दिष्ट स्थान (आवंटित क्षेत्र) के सापेक्ष दृश्य की सामग्री को समायोजित करने के लिए उपयोग किया जाता है। android:gravity="left" अगर layout_widthइसके बराबर है तो कुछ भी नहीं करेगा"wrap_content"

android:layout_gravity 

माता-पिता या लेआउट फ़ाइल के सापेक्ष देखने के लिए उपयोग किया जाता है।


0

android:gravity -> इसके उपयोग किए गए दृश्य की सामग्री का गुरुत्वाकर्षण सेट करता है।

android:layout_gravity -> यह माता-पिता के दृष्टिकोण या लेआउट के गुरुत्वाकर्षण को सेट करता है


0

गुरुत्वाकर्षण - अपने स्वयं के दृष्टिकोण पर लागू होता है।

लेआउट-गुरुत्व --- अपने माता-पिता से संबंधित देखने के लिए लागू होता है।


0

android:gravityजबकि बच्चों की गंभीरता (स्थिति) सेट android:layout_gravityसेट दृश्य खुद की स्थिति। आशा है ये मदद करेगा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.