如何在TextView中水平和垂直居中文本,以便它正好出现在Android中的TextView的中间?
当前回答
使用下面的xml代码,它对我有用,你可以改变它在中心的方向
<LinearLayout
android:layout_width="match_parent"
android:orientation="horizontal"
android:background="@color/colorPrimaryDark"
android:gravity="center"
android:layout_height="wrap_content">
<TextView
android:id="@+id/id_text"
android:layout_width="wrap_content"
android:textSize="18sp"
android:textColor="@android:color/white"
android:textStyle="normal"
android:layout_height="wrap_content"
android:text="centre me"/>
</LinearLayout>
其他回答
对于kotlin:
如果要将TextView从代码中居中:
textView.gravity = Gravity.CENTER
如果要水平居中:
textView.gravity = Gravity.CENTER_HORIZONTAL
或者,垂直居中:
textView.gravity = Gravity.CENTER_VERTICAL
我假设您使用的是XML布局。
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="@string/**yourtextstring**"
/>
还可以根据需要使用重力center_vertical或center_horizontal。
正如@steelthcopter在java:.setGravity(Gravity.CENTER);中评论的那样;。
对于Kotlin用户,.egravity=重力.CENTER
您可以将重力设置为垂直居中,将文本对齐设置为居中。
<TextView
android:text="@string/yourText"
android layout_height="wrap_content"
android layout_height="wrap_content"
android:gravity="center_vertical"
android:textAlignment="center" />
还可以使用以下方法动态设置:
textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
如果XML文件中只有一个TextView,则可以将父视图重心作为中心。这将使您的子元素位于屏幕的中心,然后您可以将您的子视图作为高度和宽度的环绕。
推荐文章
- 改变开关的“开”色
- 以编程方式将EditText的输入类型从PASSWORD更改为NORMAL,反之亦然
- 如何在隐藏和查看密码之间切换
- 在Android上调整一个大的位图文件到缩放输出文件
- 如何更改Android版本和代码版本号?
- Android Studio突然无法解析符号
- 应用程序重新启动而不是恢复
- 如何设置整个应用程序在纵向模式?
- Android中文本的阴影效果?
- 以编程方式设置TextView的布局权重
- Android -如何覆盖“后退”按钮,所以它不完成()我的活动?
- 如何从通知点击发送参数到一个活动?
- 导航目标xxx对于这个NavController是未知的
- 使用ConstraintLayout均匀间距的视图
- 文件google-services错误。模块根文件夹中缺少Json。谷歌服务插件没有它就不能正常工作。