2010-08-18 16 views
8

मेरे पास मेरे लिनियरलाउट में एक संपादन टेक्स्ट और एक बटन है और मैं उन्हें एक साथ संरेखित करना चाहता हूं ताकि वे एक साथ जुड़े हुए हों (भाषण इनपुट के लिए edittext + micButton)। अब उनके पास समान ऊंचाई नहीं है और वे वास्तव में अच्छी तरह से गठबंधन नहीं हैं (बटन संपादन टेक्स्ट से थोड़ा कम लगता है)। मुझे पता है कि मैं एक नकारात्मक मार्जिन जैसे -5dip को एक साथ आने के लिए लागू कर सकता हूं, लेकिन क्या ऐसा करने का शायद एक बेहतर तरीका है? उन्हें एक विशिष्ट कंटेनर/लेआउट में सेट करें ताकि वे स्वचालित रूप से एक ही ऊंचाई और उनके बीच कोई मार्जिन न हो?एंड्रॉइड में संपादन टेक्स्ट और बटन समान ऊंचाई बनाना

उत्तर

-1

एंड्रॉइड स्वचालित रूप से पाठ से सब कुछ ले जाने की कोशिश करता है, न कि बटन स्वयं।

मुझे अंततः इसे समझने के लिए हमेशा के लिए ले लिया। यह वास्तव में सरल है। इसे ठीक करना चाहिए।

myButton.setGravity(Gravity.CENTER_VERTICAL); 

या यदि वे एक पंक्ति में हैं .. तो बटन को तालिका पंक्ति में संलग्न करें।

myTableRow.setGravity(Gravity.CENTER_VERTICAL); 
0

रिश्तेदार लेआउट का उपयोग करके आप अन्य दृश्य के सटीक आकार जानने के बिना एक और विचारों आकार पर निर्भर करता एक दृश्य खिंचाव कर सकते हैं।

<RelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 
<Button 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:text="button" 
    android:id="@+id/but"/> 
<EditText 
    android:layout_width="100dp" 
    android:layout_height="wrap_content" 
    android:layout_toRightOf="@id/but" 
    android:layout_alignBottom="@id/but" 
    android:layout_alignTop="@id/but" 
    /> 
</RelativeLayout> 

चेक विचारों के बीच की जगह को कम करने के लिए इस लिंक: https://groups.google.com/forum/?fromgroups#!topic/android-developers/RNfAxbqbTIk

0

हम्म, पता नहीं है कि लोगों को टेबल के साथ इतना परेशान यहाँ कोड है।

<LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content"> 

     <EditText 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical" /> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical" /> 

    </LinearLayout> 

नोट: के बाद से दोनों दृश्य एक LinearLayout (मुमकिन उन्मुखीकरण = क्षैतिज) के भीतर कर रहे हैं, इस आदेश का लेआउट के भीतर दोनों केंद्रित हो जाएगा के बाद से EditTexts और बटन थोड़ा अलग ढंग से उनके पाठ उन्मुख हो सकता है, आप के लिए हो सकता है टेक्स्ट को ठीक से संरेखित करने के लिए कुछ tweaking (मार्जिन या पैडिंग बदलकर) करें।

0

मुझे आशा है कि इस समाधान अपने परिदृश्य के लिए मदद कर सकता है ... यहाँ कोड है ..

<RelativeLayout 
     android:id="@+id/rlLayout" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="15dp" 
     android:orientation="horizontal" 
     android:padding="3dp" > 

    <EditText 
     android:id="@+id/etId" 
     android:layout_width="fill_parent" 
     android:layout_height="50dip" 
     android:background="#c8c8c8" 
     android:hint="Edittext" 
     android:paddingLeft="20dip" 
     android:paddingRight="10dip" 
     android:textColor="#000000" /> 

    <RelativeLayout 
     android:id="@+id/rlLayoutid" 
     android:layout_width="50dp" 
     android:layout_height="50dp" 
     android:layout_alignRight="@+id/etId" > 

     <Button 
      android:layout_width="30dp" 
      android:layout_height="30dp" 
      android:layout_alignParentRight="true" 
      android:layout_marginRight="14dp" 
      android:layout_marginTop="10dp" 
      android:background="@drawable/calender" /> 
    </RelativeLayout> 
</RelativeLayout> 

0

@ डैनियल यहाँ आप लेआउट वजन और वजन राशि

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:gravity="center" 
     android:weight_sum=2  
     > 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight=1 
     android:text="button" 
     android:id="@+id/but"/> 
    <EditText 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight=1  
     /> 
    </LinearLayout> 
उपयोग कर सकते हैं
संबंधित मुद्दे