解决Android EditText多行输入,内容或边框显示的问题

本文介绍了一个常见的Android布局问题,即在一个水平LinearLayout中,当EditText设置为多行文本输入时,可能会出现文本截断或边框变形的情况。文章提供了一种简单有效的解决方案,通过在外层增加一个额外的LinearLayout来避免此类问题的发生。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Android中,如下面局:
<LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="5dp"
                    android:layout_marginLeft="@dimen/default_margin"
                    android:layout_marginRight="@dimen/default_margin"
                    android:layout_marginTop="5dp"
                    android:focusable="true"
                    android:focusableInTouchMode="true"
                    android:orientation="horizontal">


                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="45dp"
                        android:gravity="center_vertical|left"
                        android:text="@string/remark"
                        android:textColor="@android:color/black"
                        android:textSize="@dimen/default_text_size"/>
                        <EditText
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:background="@drawable/bg_corner_5_rect_shape_gray"
                            android:freezesText="true"
                            android:gravity="center_vertical"
                            android:padding="5dp"                      
                            android:inputType="textMultiLine"
                            android:minHeight="45dp"
                            android:paddingLeft="@dimen/default_padding"
                            android:paddingRight="@dimen/default_padding"
                            />
                </LinearLayout>




这个时候,你输入了多行文本的时候,会发现有一部份只显示一半,或者边框下边变窄。原因是因为左边的TextView引起的,具体原因我不知道 不过有一个解决办法,就是在EditText外层加上一个LinearLayout就好了如:
<LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="5dp"
                    android:layout_marginLeft="@dimen/default_margin"
                    android:layout_marginRight="@dimen/default_margin"
                    android:layout_marginTop="5dp"
                    android:focusable="true"
                    android:focusableInTouchMode="true"
                    android:orientation="horizontal">


                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="45dp"
                        android:gravity="center_vertical|left"
                        android:text="@string/remark"
                        android:textColor="@android:color/black"
                        android:textSize="@dimen/default_text_size"/>
  <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"〉
                        <EditText
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:background="@drawable/bg_corner_5_rect_shape_gray"
                            android:freezesText="true"
                            android:gravity="center_vertical"
                            android:padding="5dp"                      
                            android:inputType="textMultiLine"
                            android:minHeight="45dp"
                            android:paddingLeft="@dimen/default_padding"
                            android:paddingRight="@dimen/default_padding"
                            />
   </LinearLayout>
                </LinearLayout>


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值