0

我正在使用以下 xml 在列表视图中生成一行。虽然我已经设置了gravityascenter_Verticalright. 仅center_Vertical应用但不应用“正确”重力。我什至在代码内部尝试过。“正确的”重力不起作用。请帮助我更正代码。提前致谢 在此处输入图像描述

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/tvTicketID"
        android:layout_width="wrap_content"
        android:layout_height="52dp"
        android:layout_centerVertical="true"  
        android:layout_alignParentLeft="true"  
        android:gravity="center_vertical|left"  
        android:text="Ticket ID"
        android:textSize="15dp" />

    <TextView
        android:id="@+id/tvCreationHour" 
        android:gravity="center_vertical|right" 
        android:layout_width="wrap_content"
        android:layout_height="52dp"
        android:layout_alignParentTop="true" 
        android:layout_marginLeft="40dp"
        android:layout_toRightOf="@+id/tvTicketID" 
        android:text="Hour" />

    <TextView
        android:id="@+id/tvTableNumber"
        android:gravity="center_vertical|right" 
        android:layout_width="wrap_content"
        android:layout_height="52dp"
        android:layout_alignParentTop="true" 
        android:layout_marginLeft="24dp"
        android:layout_toRightOf="@+id/tvCreationHour" 
        android:text="Table #" />

    <TextView
        android:id="@+id/tvAmount"
        android:gravity="center_vertical|right" 
        android:layout_width="wrap_content"
        android:layout_height="52dp"
        android:layout_alignParentTop="true"   
        android:layout_marginLeft="18dp"
        android:layout_toRightOf="@+id/tvTableNumber" 
        android:text="Amount" />

</RelativeLayout>

我用上面的代码创建一行xml

holder.tvTicketID.setText(String.valueOf(ticket.getId())) ;   
holder.tvCreationHour.setText(String.valueOf(ticket.getCreationHour())) ; 
holder.tvTableNumber.setText(String.valueOf(ticket.getTableNumber())) ;  
holder.tvAmount.setText(String.valueOf(ticket.getTotalAmount()))  ;  
4

3 回答 3

0

尝试设置android:layout_gravity="right"

于 2013-01-10T04:47:55.543 回答
0

一般来说,android:gravity="right"不同于android:layout_gravity="right".

第一个影响文本本身在视图中的位置,所以如果你希望它右对齐,那么layout_width=应该是"fill_parent"or "match_parent"

第二个影响视图在其父视图内的位置,换句话说 - 在父视图内对齐对象本身(编辑框或文本视图)。

于 2013-01-10T04:54:02.303 回答
0

最后,我找到了答案。我已将 TEXTVIEW 中的 android:layout_width="wrap_content" 更改为 android:layout_width="30dp"。现在它起作用了..

于 2013-01-11T04:13:44.640 回答