我有以下布局我想让textview出现在视图的中心和中间。我怎么能实现这个目标呢?
我在图形视图中查看布局时尝试调整各种重力属性,但似乎没有任何改变。我喜欢中心的textview,我已经完成了但是在视图的中间。
感谢亚光。
<?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"
android:background="@drawable/carefreebgscaledalphajpg" >
<TextView
android:id="@+id/textviewdatefornocallspage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="You have no calls for "
android:textSize="25sp" />
</LinearLayout>
答案 0 :(得分:52)
将重力设置为linearLayout标记的中心位置:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:background="@drawable/carefreebgscaledalphajpg" >
或像这样使用RelativeLayout
:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/carefreebgscaledalphajpg" >
<TextView
android:id="@+id/textviewdatefornocallspage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="You have no calls for "
android:textSize="25sp" />
</RelativeLayout>
答案 1 :(得分:6)
在线性布局中设置android:gravity="center"
,并将文字视图的高度和宽度保持为wrap_content
。
此解决方案对我有用。
答案 2 :(得分:5)
<LinearLayout
android:layout_below="@+id/iv_divider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="@dimen/_10dp">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/mycredits"
android:textColor="@color/colorGray"
android:gravity="center"
android:textSize="@dimen/_25dp" />
</LinearLayout>
答案 3 :(得分:2)
<TextView
...
android:layout_gravity="center"
....
/>
答案 4 :(得分:1)
如果在verticallayout您的方向垂直,您可以将文本视图放在android:layout_gravity="center"
的“水平中心”。要垂直居中textview,您需要将textview的layout_height设置为match_parent并将android:gravity设置为“center”。如果要在此布局中使用多个视图,则应使用RelativeLayout并设置
android:layout_centerInParent="true"
。
答案 5 :(得分:0)
将android:gravity="center_horizontal"
添加到 LinearLayout 并将 TextView 的 layout_width 更改为android:layout_width="wrap_content"
<?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"
android:gravity="center_horizontal"
android:background="@drawable/carefreebgscaledalphajpg" >
<TextView
android:id="@+id/textviewdatefornocallspage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="You have no calls for "
android:textSize="25sp" />
</LinearLayout>
答案 6 :(得分:0)
将textview的宽度设置为textview的wrap_content
,并将LinearLayout设置为android:gravity=center_horizontal
答案 7 :(得分:0)
答案 8 :(得分:0)
在线性布局中设置android:gravity="center"
答案 9 :(得分:0)
没有其他答案对我有用。我不得不使用android:textAlignment="center"
我的布局如下
<LinearLayout...
<RelativeLayout...
<RelativeLayout....
<TextView
android:layout_centerInParent="true"
android:textAlignment="center"
答案 10 :(得分:-1)
使用相对布局,它总是提供更准确和灵活的布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/ic_launcher" />
</RelativeLayout>