如何在android中动态增加EditText的大小?
Posted
技术标签:
【中文标题】如何在android中动态增加EditText的大小?【英文标题】:How do I increase the size of EditText dynamically in android? 【发布时间】:2020-12-03 08:13:07 【问题描述】:我希望 EditText 的高度根据输入的文本大小动态增加。
就像 Whatsapp。
这就是我现在正在做的事情!
<LinearLayout
android:layout_alignParentBottom="true"
android:layout_
android:layout_
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="8dp"
android:orientation="horizontal">
<EditText
android:textSize="15dp"
android:textColor="#000000"
android:hint="Enter New Note"
android:textColorHint="#8B111111"
android:layout_
android:layout_
android:layout_gravity="center_vertical"
android:gravity="center"
android:imeOptions="actionDone"
android:layout_marginTop="8dp"
android:contentDescription="Enter Input Here"
android:layout_marginBottom="8dp"
android:id="@+id/editextNew"/>
</LinearLayout>
【问题讨论】:
只是进入活动并给它宽度/高度:) 对不起,我不明白@ParthPitroda 更改高度以换行内容并将最大行数添加到您想要的行数。 EditText 的大小在此之后开始变得非常小! @RituSumanMohanty 您的LinearLayout
的高度仍为 44dp。
【参考方案1】:
请试试这个:
<LinearLayout
android:layout_alignParentBottom="true"
android:layout_
android:layout_
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="8dp"
android:orientation="horizontal">
<EditText
android:textSize="15dp"
android:textColor="#000000"
android:hint="Enter New Note"
android:maxLines="40"
android:lines="20"
android:textColorHint="#8B111111"
android:layout_
android:layout_
android:layout_gravity="center_vertical"
android:gravity="center"
android:imeOptions="actionDone"
android:layout_marginTop="8dp"
android:contentDescription="Enter Input Here"
android:layout_marginBottom="8dp"
android:id="@+id/editextNew"/>
</LinearLayout>
【讨论】:
【参考方案2】:您必须进行的唯一更改(两次都发生):
android:layout_height="wrap_content"
【讨论】:
【参考方案3】:因为你给它一个固定高度。将其更改为 wrap_content ,它应该可以工作。
您可以添加 android:maxLines 来限制它的扩展程度。
【讨论】:
以上是关于如何在android中动态增加EditText的大小?的主要内容,如果未能解决你的问题,请参考以下文章
如何指向在 Android 的 ListView 中动态生成的 EditText 元素?