如何在水平方向防止EditText填充屏幕

时间:2014-08-06 17:07:01

标签: android layout android-edittext orientation maximize

我有EditText

<EditText
    android:id="@+id/txtSearch"
    android:layout_width="match_parent"
    android:layout_height="48dp"
    android:background="#fff"
    android:gravity="center"
    android:hint="@string/search_hint"
    android:singleLine="true"
    android:textColorHint="#ababab"
    android:textSize="19sp"
    android:inputType="textNoSuggestions"/>

我有两个main.xml布局,一个用于vertical,另一个用于horizontal,它们位于正确的目录中以自动拾取。然而,我面临的问题是,只要屏幕水平旋转,EditText最大化并有一个按钮&#34; [Next] &#34;显示在它的右边。

如何避免这种情况并以与纵向相同的方式显示EditText

我使用Android 4.4测试

2 个答案:

答案 0 :(得分:7)

您需要将flagNoExtractUi imeOption添加到EditText。在xml中添加以下属性。

android:imeOptions="flagNoExtractUi"

这将解决您的问题。

答案 1 :(得分:0)

的EditText

<EditText
    android:id="@+id/txtSearch"
    android:layout_width="0" <!-- 0dp -->
    android:layout_weight="3" <!-- percentage-->
    android:layout_height="48dp"
    android:background="#fff"
    android:gravity="center"
    android:hint="@string/search_hint"
    android:singleLine="true"
    android:textColorHint="#ababab"
    android:textSize="19sp"
    android:inputType="textNoSuggestions"/>

按钮

<Button
        android:id="@+id/button"
        android:layout_width="0" <!-- 0dp -->
        android:layout_weight="5" <!-- percentage-->
        android:layout_height="48dp"
        android:background="#fff"
        android:gravity="center"
        android:textSize="19sp"/>