【发布时间】:2014-05-02 23:09:00
【问题描述】:
我有一个带有 100dp lineSpacingExtra 的多行编辑文本。
现在文本显示在一行的顶部。并且光标的高度和行高一样,比文字的高度高很多。
如何使文本显示在行的中心? 或者,如果我可以在一行中调整文本的顶部填充或底部填充。
注意: 我的意思是不使用 android:gravity="center_vertical" 使文本中心在 TextView 中垂直。 我想在行中垂直显示文本中心。
xml如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@android:color/transparent"
android:fadingEdge="vertical"
android:gravity="top"
android:inputType="textCapSentences|textMultiLine|textShortMessage"
android:lineSpacingExtra="100dp"
android:longClickable="false"
android:minLines="10"
android:paddingBottom="5dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="5dp"
android:scrollbars="vertical"
android:text="Text ABCDE\n Line2"
android:textAlignment="center"
android:textSize="16sp" />
</LinearLayout>
感谢任何帮助。 谢了!
【问题讨论】:
-
在此处显示您的 xml 和快照。
-
只用EditText是没有办法的,你应该创建一个LinearLayout或RelativeLayout来环绕EditText,将LinearLayout或RelativeLayout的重力设置为Gravity.Center,将EditText的高度设置为Wrap_Content,它应该工作
标签: android textview android-edittext line center