【问题标题】:Align Text and Images perfectly next to Each Other将文本和图像完美对齐
【发布时间】:2015-04-09 09:06:45
【问题描述】:

我正在尝试将文本和图像排成一条完美的线,但不能完全居中。

正如您在图像中看到的那样,它几乎是彼此相邻的中心,但并不完全是我错过了什么

<?xml version="1.0" encoding="utf-8"?>
<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:textSize="14dp"
        android:textStyle="bold"
        android:gravity="center_vertical"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

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


         />

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

         />

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

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

        />


</RelativeLayout>

【问题讨论】:

  • 使用水平方向和重心的线性布局,并为其中的每个视图提供适当的权重。
  • 在 RelaiveLayout 中使用 android:gravity="center_vertical"。

标签: android xml android-layout android-imageview textview


【解决方案1】:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="10dp">

    <TextView
        android:id="@+id/textView1"
        android:textSize="14dp"
        android:textStyle="bold"
        android:gravity="center_vertical"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="5dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_marginLeft="5dp"

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:src="@drawable/image_ls" />

    <TextView
        android:id="@+id/textView2"
        android:textSize="14dp"
        android:layout_marginLeft="5dp"
        android:textStyle="bold"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:text="TextView" />

    <ImageView
        android:id="@+id/imageView2"
        android:layout_marginLeft="5dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:src="@drawable/image_ls" />

    <TextView
        android:id="@+id/textView3"
        android:textSize="14dp"
        android:textStyle="bold"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:text="TextView" />

</LinearLayout>

【讨论】:

    【解决方案2】:
    Try This Code:- 
    
    <?xml version="1.0" encoding="utf-8"?>
    <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:textSize="14dp"
            android:textStyle="bold"
            android:gravity="center"
              android:layout_centerVertical="true"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView" />
    
        <ImageView
            android:id="@+id/imageView1"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:layout_toRightOf="@+id/textView1"
             android:layout_centerVertical="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/image_ls"
    
    
             />
    
        <TextView
            android:id="@+id/textView2"
            android:textSize="14dp"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:textStyle="bold"
            android:layout_toRightOf="@+id/imageView1"
             android:layout_centerVertical="true"
            android:gravity="center"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView"
    
             />
    
        <ImageView
            android:id="@+id/imageView2"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:layout_toRightOf="@+id/textView2"
             android:layout_centerVertical="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/image_ls"
             />
    
        <TextView
            android:id="@+id/textView3"
            android:layout_toRightOf="@+id/imageView2"
            android:layout_centerVertical="true"
            android:gravity="center_vertical|right"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:textSize="14dp"
            android:textStyle="bold"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView"
    
            />
    
    
    </RelativeLayout>
    

    【讨论】:

      【解决方案3】:
       <?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:gravity="center" >
      
      <TextView
          android:id="@+id/textView1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center_vertical"
          android:gravity="center_vertical"
          android:text="TextView"
          android:textSize="14dp"
          android:textStyle="bold" />
      
      <ImageView
          android:id="@+id/imageView1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:gravity="center_vertical|right"
          android:src="@drawable/ic_launcher" />
      
      <TextView
          android:id="@+id/textView2"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center_vertical|right"
          android:text="TextView"
          android:textSize="14dp"
          android:textStyle="bold" />
      
      <ImageView
          android:id="@+id/imageView2"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center_vertical|right"
          android:gravity="center_vertical|right"
          android:src="@drawable/ic_launcher" />
      
      <TextView
          android:id="@+id/textView3"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center_vertical|right"
          android:text="TextView"
          android:textSize="14dp"
          android:textStyle="bold" />
      
      </LinearLayout>
      

      【讨论】:

        【解决方案4】:

        试试这个:

        使用 LinearLayout 将 android 小部件固定在垂直或水平方向。

        <?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:layout_marginLeft="5dp"
        android:layout_marginTop="10dp"
        android:gravity="center_vertical"
        android:orientation="horizontal" >
        
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView"
            android:textSize="14dp"
            android:textStyle="bold" />
        
        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:src="@drawable/ic_launcher" />
        
        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TextView"
            android:textSize="14dp"
            android:textStyle="bold" />
        
        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:src="@drawable/ic_launcher" />
        

        【讨论】:

          猜你喜欢
          • 2018-10-09
          • 1970-01-01
          • 2016-07-29
          • 1970-01-01
          • 1970-01-01
          • 2016-12-02
          • 1970-01-01
          • 1970-01-01
          • 2022-10-07
          相关资源
          最近更新 更多