Vertical TextView Center in RelativeLayout

In the following image, I want the text in red to be vertically centered, I would like to use only RelativeLayout, not LinearLayouts, I think I can understand how to do this with LinearLayout, but I don’t want to use these.

All this is based on the examples that I found here Android developer blog - Android Layout Tricks # 1

alt text http://i29.tinypic.com/2rmku52.jpg

Here is my xml

<?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="?android:attr/listPreferredItemHeight"
    android:padding="6dip">

    <ImageView android:id="@+id/icon" android:layout_width="wrap_content"
        android:layout_height="fill_parent" 
        android:layout_alignParentTop="true"
        android:layout_alignParentBottom="true" 
        android:layout_alignParentRight="true"
        android:src="@drawable/chevron" />



    <TextView android:id="@+id/rightText" android:layout_width="55px"
        android:layout_height="fill_parent" android:layout_toLeftOf="@id/icon"
        android:layout_alignParentTop="true"
        android:layout_alignParentBottom="true"
        android:textSize="14dip"
        android:text="$15.99" />


    <TextView android:id="@+id/secondLine" android:layout_width="wrap_content"
        android:layout_height="26dip" android:layout_toLeftOf="@id/rightText"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true" 
        android:text="Simple application that shows how to use RelativeLayout" />

    <TextView android:layout_width="fill_parent" android:id="@+id/firstLine"
        android:layout_height="wrap_content" android:layout_toLeftOf="@id/rightText"
        android:layout_alignParentLeft="true" android:layout_alignParentTop="true"
        android:layout_above="@id/secondLine"
        android:layout_alignWithParentIfMissing="true" android:gravity="center_vertical"
        android:singleLine="true"
        android:ellipsize="end"
        android:maxLines="1"
        android:textSize="13dip"
        android:text="My Application that has a really long title  asdfsdf asdf sdf asdf" />

</RelativeLayout>
+3
source share
2 answers

You just need to install Gravity for TextView.

+6
source

, . textView

 android:layout_centerVertical="true"
+2

Source: https://habr.com/ru/post/1753938/


All Articles