我有一个问题,那可能很傻,但我无法弄清楚为什么这不起作用。
基本上,我的活动中有一个标题。此标题应居中。
布局-XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
style="@style/TextHeader"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/define"
/>
</LinearLayout>
styles.xml中的定义
<style name="TextHeader">
<item name="android:textSize">20dp</item>
<item name="android:paddingTop">15dp</item>
<item name="android:layout_gravity">center</item>
<item name="android:paddingBottom">15dp</item>
</style>
据我了解,layout_gravity
定义了组件本身的重力,而gravity
定义了此组件内容的重力。我尝试了两种方式,包括center
和center_horizontal。我还制作了标题TextView layout_width:wrap_content
,并试图将其与layout_gravity
对齐,但结果总是跟随(如果我将应用放在手机上也一样)
为什么会这样?我该如何解决?
答案 0 :(得分:8)
有一些不同的解决方案,这是一个:
<TextView
android:id="@+id/text"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="@string/define" />
这是另一个:
<RelativeLayout .../>
<TextView
...
android:centerInParent="true" />
</RelativeLayout>
您可以将样式属性调整为您选择的任何方法。
答案 1 :(得分:0)
尝试使用"center_horizontal"
和layout_width:"fill_parent"
。
答案 2 :(得分:0)
尝试
center_vertical
或
Use Relative Layout.
答案 3 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical" >
android:gravity-将所有视图置于父级中(在布局中使用)
android:layout_gravity-将您的视图置于父级居中(在要居中的所有视图中使用)