【问题标题】:Align Text and Images Center to Each Other将文本和图像中心对齐
【发布时间】:2015-04-08 17:52:07
【问题描述】:

我正在以列表格式显示文本和图像,但我无法让它们在一条直线上完美地对齐,我错过了什么

下面是我的布局代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true" >



    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:textSize="14dp"
        android:textStyle="bold"
        android:layout_gravity="center|right"
        android:gravity="center|right"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"

         />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/textView1"
        android:layout_gravity="center|right"
        android:gravity="center|right"
        android:src="@drawable/image_ls"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"

         />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center|right"
        android:text="TextView"
         android:textSize="14dp"
        android:layout_toRightOf="@+id/imageView1"
        android:textStyle="bold"
        android:gravity="center|right"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"
         />

    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_gravity="center|right"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/textView2"
        android:src="@drawable/image_ls"
        android:gravity="center|right"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"


         />


</RelativeLayout>

【问题讨论】:

    标签: android android-layout android-imageview textview


    【解决方案1】:

    对于这种简单的布局设计,我更喜欢线性布局而不是相对布局,你只需要使用它就更容易和直接了:

    android:layout_gravity="center_vertical"
    

    如果需要任何其他尺寸限制,请使用权重。 这是解决方案,希望它是您所需要的:

        <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
     >
    
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="hello"
            android:textStyle="bold"
            android:layout_gravity="center_vertical"
            android:layout_marginTop="10dp"
    
             />
    
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
    
            android:src="@drawable/ic_launcher"
    
            android:layout_gravity="center_vertical"
            android:layout_marginTop="10dp"
    
             />
    
        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="hello"
            android:textStyle="bold"
         android:layout_gravity="center_vertical"
            android:layout_marginTop="10dp"
             />
    
        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
    
            android:layout_height="wrap_content"
          android:layout_gravity="center_vertical"
            android:src="@drawable/ic_launcher"
    
            android:layout_marginTop="10dp"
    
    
             />
    
    </LinearLayout>
    </LinearLayout>
    

    【讨论】:

      【解决方案2】:

      这确实有效:

      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:layout_alignParentLeft="true"
          android:layout_alignParentRight="true"
          android:layout_alignParentTop="true"
          android:padding="5dp"
          android:gravity="center_vertical|center_horizontal"
      
      
          android:background="@color/gray_dark">
      
      
      
          <TextView
              android:id="@+id/textView1"
              android:layout_width="wrap_content"
              android:layout_height="match_parent"
              android:text="TextView"
              android:textSize="14dp"
              android:textStyle="bold"
              android:layout_gravity="center_vertical|right"
              android:gravity="center_vertical|right"
              android:layout_marginLeft="5dp"
      
      
              />
      
          <ImageView
              android:id="@+id/imageView1"
              android:layout_width="wrap_content"
              android:layout_height="match_parent"
              android:layout_toRightOf="@+id/textView1"
              android:layout_gravity="center_vertical|right"
              android:gravity="center_vertical|right"
              android:src="@drawable/image_ls"
              android:layout_marginLeft="5dp"
      
      
              />
      
          <TextView
              android:id="@+id/textView2"
              android:layout_width="wrap_content"
              android:layout_height="match_parent"
              android:layout_gravity="center_vertical|right"
              android:text="TextView"
              android:textSize="14dp"
              android:layout_toRightOf="@+id/imageView1"
              android:textStyle="bold"
              android:gravity="center_vertical|right"
              android:layout_marginLeft="5dp"
      
              />
      
          <ImageView
              android:id="@+id/imageView2"
              android:layout_width="wrap_content"
              android:layout_height="match_parent"
              android:layout_toRightOf="@+id/textView2"
              android:src="@drawable/image_ls"
              android:layout_gravity="center_vertical|right"
              android:gravity="center_vertical|right"
              android:layout_marginLeft="5dp"
      
      
      
              />
      
      
      </RelativeLayout>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-01-10
        • 2017-12-10
        • 2017-01-05
        • 1970-01-01
        • 2016-10-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多