Android - 窗口中的多个EditText字段调整大小

时间:2011-04-29 22:24:23

标签: android android-layout

在我的一个观点中,我有三个EditText字段。前两个是单行,第三个是多行。我正在使用android:windowSoftInputMode="stateVisible|adjustResize".但是当IME出现并且它具有焦点时,第三个字段在纵向模式下折叠太小。

是否有设置最小高度的选项可以强制窗口向下滚动以容纳第三个字段?

我尝试在android:minHeight="20dip"文件中设置xml,但这没有效果。

有问题的EditText如下:

<EditText 
        android:id="@+id/msgreplyarea"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:gravity="top"
        android:layout_weight="1"
        android:layout_marginLeft="10dip" android:layout_marginRight="10dip"
        android:layout_marginTop="10px" 
        android:inputType="textCapSentences|textMultiLine"
        android:imeOptions="flagNoEnterAction">

感谢。

2 个答案:

答案 0 :(得分:2)

android:minHeight确实有效,但父视图需要包装在ScollView

<ScrollView
  android:layout_width="fill_parent"
  android:layout_height="0dip"
  android:layout_weight="1"
  android:scrollbarStyle="outsideInset"
  android:fillViewport="true">
    <LinearLayout
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:orientation="vertical" >
        <EditText 
          android:id="@+id/replyarea"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content" android:gravity="top"
          android:singleLine="false" android:layout_weight="1"
          android:layout_marginLeft="10dip" android:layout_marginRight="10dip"
          android:layout_marginTop="10px"
          android:minHeight="120dp"
          android:inputType="textAutoCorrect|textCapSentences|textMultiLine"
          android:imeOptions="flagNoEnterAction" />
    </LinearLayout>    
</ScrollView>

答案 1 :(得分:0)

Android documentation可能对此有所帮助。或者您可以使用快速修复:

<activity name="EditContactActivity"
    android:windowSoftInputMode="stateVisible|adjustResize">
    ...
</activity>

OR

android:windowSoftInputMode="adjustPan"