我正在使用EditText
发送消息。 EditText
的填充为30sdp
。
问题是当我单击此EditText时,光标在EditText的中间闪烁,而我希望光标应在EditText的顶部闪烁。
这是我的代码。
<EditText
android:id="@+id/edremarkspetrolbill"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tvpetrolbillremarks"
android:layout_marginLeft="@dimen/_7sdp"
android:layout_marginTop="@dimen/_10sdp"
android:layout_marginRight="@dimen/_10sdp"
android:background="@drawable/background_boxsearch"
android:gravity="top"
android:inputType="textMultiLine"
android:padding="@dimen/_30sdp"
android:textColor="@color/colorbluewh"
android:textCursorDrawable="@color/colorbluewh" />
答案 0 :(得分:0)
将此属性添加到您的编辑文本中:android:gravity="top"
答案 1 :(得分:0)
在多行编辑文本中将重力设置为顶部
android:gravity="top"
android:inputType="textMultiLine"
答案 2 :(得分:0)
像下面一样使用重力
android:gravity="top|left"
android:inputType="textMultiLine"
答案 3 :(得分:0)
android:gravity="top"
是正确的,但是您有android:layout_height="wrap_content"
,这是有问题的。您的编辑文本高度接近于文本大小+填充,光标位于编辑文本的顶部,但是看不到它。如果您现在再为编辑文本设置高度,则现在将看到光标在哪里。或者,如果您希望高度wrap_content
,则可以提供minHeight
参数,然后编辑文本将以minHeight
进行填充,如果文本不适合其高度,则会进行扩展。您还可以在gravity
字段中不仅提供一个参数,还可以在参数|
后面附加参数。例如:top|start
,top|end
等
答案 4 :(得分:0)
您应该像这样更改代码(我将100dp设置为高度,但我建议您将EditText放在CostraintLayout中并使用match_constraint)
<EditText
android:id="@+id/edremarkspetrolbill"
android:layout_width="match_parent"
android:layout_height="100dp"
android:layout_below="@+id/tvpetrolbillremarks"
android:layout_marginLeft="@dimen/_7sdp"
android:layout_marginTop="@dimen/_10sdp"
android:layout_marginRight="@dimen/_10sdp"
android:paddingStart="30dp"
android:paddingEnd="30dp"
android:background="@drawable/background_boxsearch"
android:gravity="top|left"
android:inputType="textMultiLine"
android:textColor="@color/colorbluewh"
android:textCursorDrawable="@color/colorbluewh" />