我在LinearLayout中有一个textView,它显示的文本并不总是在中心,即使我使用gravity =" center"属性。我还使用" match_parent。
设置了layou_width此textView位于LinearLayout中,该LinearLayout位于视图的父LinearLayout中。
我的textView位于ListView中,代表项目行的结尾。
我的适配器使用ViewHolder模式。
在这里,我真的不明白为什么有时文字是中心的,有时它在左边。
这里有2个不同状态的视图的屏幕截图,您可以在其中看到对齐问题:
我想拥有什么: 这里只是关于文本现在或在这个地方显示的时间,我想只在中心显示这个文本,有时它显示在左边,你可以在上面的截图中看到
ListView布局:
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/dialogTitle"
android:listSelector="@drawable/listitem_selector"
tools:listitem="@layout/item_customer_in_queue">
</ListView>
项目布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/item_in_queue_list"
android:layout_width="match_parent"
android:layout_height="@dimen/in_queue_item_height"
android:minHeight="@dimen/in_queue_item_height"
android:background="@color/bckg"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.95">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<ImageView.../>
<ImageView.../>
<ImageView.../>
</RelativeLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<ImageView.../>
<ImageView.../>
</RelativeLayout>
<TextView.../>
<TextView.../>
<TextView.../>
<LinearLayout <=here my LinearLayout of my issue
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<View
android:layout_width="fill_parent"
android:layout_height="20dp"
android:layout_weight="0.1"
android:layout_gravity="bottom"/>
<TextView
android:id="@+id/list_dueTime"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center" <=here my issue
android:text="due"
android:layout_weight="0.8"
android:textColor="@color/dark_grey"
android:textAppearance="?android:attr/textAppearanceSmall" />
</LinearLayout>
</LinearLayout>
<ProgressBar.../>
</LinearLayout>
答案 0 :(得分:3)
尝试这个: 在这种情况下,我已经将重力提供给文本视图的父级,并更改了文本视图宽度以包装内容 。 。 。 。 。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<View
android:layout_width="fill_parent"
android:layout_height="20dp"
android:layout_weight="0.1"
android:layout_gravity="bottom"/>
<TextView
android:id="@+id/list_dueTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="due"
android:layout_weight="0.8"
android:textColor="@color/dark_grey"
android:textAppearance="?android:attr/textAppearanceSmall" />
</LinearLayout>
。 。 。
答案 1 :(得分:0)
当您谈论对齐“中心”时,中心由视图的宽度决定。为了帮助您进行调试,您可以向视图添加彩色背景并查看其边界。
答案 2 :(得分:0)
制作布局xml并粘贴以下代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5dp" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="80dp"
android:weightSum="1" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="5dp"
android:layout_weight="0.4"
android:background="#f0f0f0" >
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_weight="0.6"
android:background="#f0f0f0"
android:layout_height="match_parent" >
<TextView
android:id="@+id/txt_now"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="5dp"
android:textSize="18sp"
android:text="Now" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_marginLeft="5dp"
android:text="12 Mins Overdue"
android:textAppearance="?android:attr/textAppearanceSmall" />
</RelativeLayout>
</LinearLayout>