在TextView Android中对齐文本和图标

时间:2017-04-27 09:58:07

标签: java android xml android-layout

我正在android studio中进行ui设计任务。我能够得到这个 My design

这是我的代码

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent" tools:context=".MainActivity">

    <ImageView
        android:id="@+id/topImage"
        android:src="@drawable/shebaartist"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="centerCrop" />

    <TextView android:text="Event Planning and Decoration, Beads and Jewelry Making, Props and Bridals, Aso-Oke #WeMakePoshDesign"
        android:drawableLeft="@drawable/about"
        android:layout_below="@+id/topImage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:drawablePadding="5dp"
        android:padding="10dp"
        android:textSize="16dp"
        android:fontFamily="sans-serif-black"
        android:background="#F0E68C"
        android:id="@+id/descText" />

    <TextView android:text="150 Alimi Rd, Alore, Ilorin, Kwara State"
        android:drawableLeft="@drawable/marker"
        android:layout_below="@+id/descText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:singleLine="true"
        android:drawablePadding="5dp"
        android:padding="10dp"
        android:textSize="16dp"
        android:fontFamily="sans-serif-light"
        android:id="@+id/addrText"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <TextView android:text="shebaeventss@gmail.com"
        android:drawableLeft="@drawable/message"
        android:layout_below="@+id/addrText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:singleLine="true"
        android:drawablePadding="5dp"
        android:padding="10dp"
        android:background="#F0E68C"
        android:textSize="16dp"
        android:fontFamily="sans-serif-black"
        android:id="@+id/emailText"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <TextView android:text="07055393673"
        android:drawableLeft="@drawable/phone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:singleLine="true"
        android:drawablePadding="5dp"
        android:padding="10dp"
        android:textSize="16dp"
        android:fontFamily="sans-serif-light"
        android:id="@+id/mobilenoText"
        android:layout_below="@+id/emailText"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

</RelativeLayout>

我想将文本视图中的图标和文本对齐在同一行并且大小相同。我的问题是我该怎么做?请指出我的错误并帮助我解决这个问题。

3 个答案:

答案 0 :(得分:1)

  

请使用center对齐方式将重力属性添加到TextView中   图标大小随24dp而变化。

<TextView android:text="Event Planning and Decoration, Beads and Jewelry Making, Props and Bridals, Aso-Oke #WeMakePoshDesign"
        android:drawableLeft="@drawable/about"
        android:layout_below="@+id/topImage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:drawablePadding="5dp"
        android:padding="10dp"
        android:textSize="16dp"
        android:gravity="center"
        android:fontFamily="sans-serif-black"
        android:background="#F0E68C"
        android:id="@+id/descText" />

答案 1 :(得分:1)

如果这是你想要的,那么你只需要改变引力 android:gravity="center" android:gravity="center_vertical"

enter image description here

答案 2 :(得分:0)