EditText和Button高度问题

时间:2012-07-10 20:01:45

标签: android android-edittext android-button

我在LinearLayout包含的EditText控件旁边有一个Button。一切似乎都很好,除了Button明显高于EditText,我希望它是相同的高度。 @ drawable / main_edittext和@ drawable / main_edittext_button的高度是相同的,但即使没有背景设置,高度也是不同的。在应用程序清单文件中,应用程序主题仅设置为windowNoTitle = true。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:background="@drawable/main_background"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <EditText
        android:id="@+id/edit_message"
        style="@style/MainEditText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:hint="@string/edit_message"
        android:singleLine="true" />

    <Button
        android:id="@+id/edit_message_button"
        style="@style/MainSearchButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="sendMessage"
        android:text="@string/button_send" />

</LinearLayout>

<style name="MainEditText">
    <item name="android:background">@drawable/main_edittext</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textColor">#262626</item>
</style>

<style name="MainSearchButton">
    <item name="android:background">@drawable/main_edittext_button</item>
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textColor">#ff5500</item>
</style>

+ main_edittext.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item 
        android:state_pressed="true" 
        android:drawable="@drawable/edit_text">
    </item>
    <item 
        android:state_enabled="true" 
        android:state_focused="true" 
        android:drawable="@drawable/edit_text">
    </item>
    <item android:state_enabled="true" 
        android:drawable="@drawable/edit_text">
    </item>
</selector>

-main_edittext.xml

+ main_edittext_button.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item 
        android:state_pressed="true" 
        android:drawable="@drawable/edit_text_button">
    </item>
    <item
        android:state_focused="true" 
        android:drawable="@drawable/edit_text_button">
    </item>
    <item android:drawable="@drawable/edit_text_button" />
</selector>

-main_edittext_button.xml

2 个答案:

答案 0 :(得分:4)

尝试删除填充和边距:android:layout_margin="0dp"android:padding="0dp"

另外,根据您的评论,也可以将minHeight修改为0:android:minHeight="0dp"

答案 1 :(得分:0)

如果按钮“edit_text_button”的drawable是9-patch drawable,请尝试删除或填充较小的填充。 为了以防万一,为不同的密度放置不同的资源:ldpi,mdpi和hdpi。