我已经看到很多关于这个主题的答案,但没有一个能解决我的问题。我的布局文件如下所示:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical"
android:background="@color/lightGrey"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/chatAppBarLayout"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:layout_alignParentTop="true">
<android.support.v7.widget.Toolbar
android:id="@+id/chatToolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:layout_scrollFlags="scroll|enterAlways" />
</android.support.design.widget.AppBarLayout>
<RelativeLayout
android:id="@+id/chatScreen"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingBottom="16dp"
android:paddingTop="16dp"
android:layout_marginTop="?attr/actionBarSize">
<ListView
android:id="@+id/chatListView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/sendMessageContainer"
android:layout_marginBottom="10dp"
android:scrollbars="none"
android:stackFromBottom="true"
android:transcriptMode="normal">
</ListView>
<RelativeLayout
android:id="@+id/sendMessageContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="30dp"
android:layout_alignParentBottom="true"
android:layout_marginBottom="0dp">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/sendChatMessage"
android:layout_toLeftOf="@+id/sendChatMessage"
android:layout_alignParentLeft="true">
<EditText
android:id="@+id/chatInput"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="textMultiLine"
android:lines="1"
android:maxLines="5"
android:scrollbars="vertical" />
</LinearLayout>
<android.support.design.widget.FloatingActionButton
android:id="@+id/sendChatMessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginLeft="15dp"
android:layout_alignParentRight="true" />
</RelativeLayout>
</RelativeLayout>
</android.support.design.widget.CoordinatorLayout>
我希望它最初显示1行,但在输入文本时扩展到最多5行。我无法弄清楚为什么我的EditText
不会进入多行。我有一种感觉,因为它被固定在一些视图上,但我无法弄明白。任何帮助将不胜感激。
编辑:所以看来上面的代码,我的EditText
IS扩展到多行,但不是当软输入打开时。我打开软输入,输入2行,EditText显示一行带有垂直滚动。当我关闭软输入时,它会扩展为2行。当我再次打开软输入时,有2行。如果我输入另一行,它会显示2行滚动。如果我关闭,它会扩展到3行。当软输入打开时,为什么不扩展?
答案 0 :(得分:0)
您已将行设置为1,这就是为什么它只显示一行。
更改android:lines="5"
并添加android:minLines="1"
这将是
<EditText
android:id="@+id/chatInput"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:lines="5"
android:minLines="1"
android:scrollbars="vertical" />
答案 1 :(得分:0)
试试这个
android:inputType="textMultiLine"
android:lines="5"
然后看起来像
<EditText
android:id="@+id/editTextmessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="15"
android:inputType="textMultiLine"
android:maxLines="5"
android:scrollbars="vertical"
android:textSize="@dimen/small_txt_size" />
答案 2 :(得分:0)
试试这种方式
<EditText
android:id="@+id/chatInput"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="textMultiLine"
android:minLines="5"
android:scrollbars="vertical" />
答案 3 :(得分:0)
你也可以这样做:
<android.support.v4.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:context="nasuakza.com.br.nasuakz.activities.AtvProduto">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/descricao" />
</android.support.v4.widget.NestedScrollView>
答案 4 :(得分:0)
在源代码中添加以下行
editor.setSingleLine(false);