我有一个multiLine EditText字段,我在这个行的布局中定义如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="320dp" android:layout_height="wrap_content"
android:background="@color/lightblue" android:focusable="false">
<RelativeLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginLeft="14dp"
android:layout_marginTop="4dp" android:layout_marginRight="14dp" android:focusable="false">
<TextView android:textSize="12dp" android:layout_height="wrap_content"
android:layout_width="wrap_content" android:id="@+id/tvLabel"
android:width="80dp" android:textColor="@color/lbl_color_alt"
android:text="LABEL:" android:layout_marginRight="18dp"></TextView>
<EditText android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@+id/etValue"
android:layout_toRightOf="@+id/tvLabel"
android:singleLine="false" android:gravity="top|left"
android:minLines="3"
android:inputType="textAutoCorrect|textCapSentences|textMultiLine"
android:imeOptions="normal" android:textSize="12dp"
/>
</RelativeLayout>
我可以调整minLines属性,EditText的大小也会增长和缩小。但是,我希望字段根据预先填充的内容调整其大小。因此,如果内容包含6行,则会相应地调整高度。我需要在代码中做些什么来实现这个目的吗?最终,我想处理onTextChanged监听器中的高度重新调整(类似于iPhone)。
答案 0 :(得分:0)
我以编程方式使用setLines()在代码中设置行高,这阻止了EditText根据内容进行调整。我在项目早些时候做过这么多,并且忘记了所有这些。