我正试图在RelativeLayout中垂直居中两个文本视图。我正在尝试使用参数android:gravity="center_vertical"
和android:layout_centerVertical="true"
,但两个文字视图(uploaderTv
和viewCountTv
)仍然偏离中心(垂直)
http://i.stack.imgur.com/czacA.png
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="7dip"
android:paddingTop="7dip" >
<TextView
android:id="@+id/titleTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/white"
android:paddingLeft="5dp"
android:text=""
android:textSize="20sp" />
<TextView
android:id="@+id/uploaderTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:paddingLeft="5dip"
android:adjustViewBounds="true"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:textColor="@color/verylightgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/viewCountTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:gravity="center_vertical"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:layout_toRightOf="@id/uploaderTv"
android:textColor="@android:color/black"
android:textSize="16sp" />
<ImageView
android:id="@+id/buyButton"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_below="@+id/titleTv"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:gravity="center"
android:paddingTop="7dip"
android:src="@drawable/buy_a_up_btn" />
</RelativeLayout>
答案 0 :(得分:0)
您根本无法在容器中垂直居中两个元素。中心是集装箱的中间。你会如何在这个中心放置两个元素?
答案 1 :(得分:0)
试试这个:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="7dip"
android:paddingTop="7dip" >
<TextView
android:id="@+id/titleTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/white"
android:paddingLeft="5dp"
android:text=""
android:textSize="20sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/buyButton"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:paddingTop="7dip"
android:src="@drawable/buy_a_up_btn" />
<TextView
android:id="@+id/uploaderTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:paddingLeft="5dip"
android:adjustViewBounds="true"
android:textColor="@color/verylightgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/viewCountTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/uploaderTv"
android:layout_toLeftOf="@id/buyButton"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:textColor="@android:color/black"
android:textSize="16sp" />
</RelativeLayout>
</LinearLayout>
这将两个TextViews和ImageView包装在RelativeLayout中。