简体   繁体   English

如何将ImageView和TextView对齐在线性布局中

[英]How to align ImageView & TextView align right in a Linear Layout

I would like show my Page view header like below, 我想显示我的页面视图标题,如下所示,

在此输入图像描述

I'm using the following layout using, but the image and second textview not moving to right, its all align center. 我正在使用以下布局,但图像和第二个textview没有向右移动,它全部对齐中心。

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="1"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="0dip"
        android:layout_height="fill_parent"
        android:layout_weight="6"
        android:background="@drawable/transbg"
        android:gravity="center"
        android:orientation="vertical" > 
            <TableRow
                android:id="@+id/tableRow1"
                android:layout_width="fill_parent"
                android:layout_height="0dip"
                android:layout_weight="6"   
                android:gravity="center"    
                >
               <TextView
               android:id="@+id/txtName"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"                               
               android:text="Magasin"
               android:textColor="#FFF"               
               android:textSize="18sp"
               android:textStyle="bold" />

               <LinearLayout
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content" 
                   android:layout_weight="0"
                   android:orientation="horizontal">

                   <ImageView
                       android:id="@+id/imageView1"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:gravity="right"
                       android:src="@drawable/yellow2" />

                   <TextView
                       android:id="@+id/tvCredits"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:gravity="right"
                       android:text="test"
                       android:textColor="#fff"
                       android:textSize="16sp" />
               </LinearLayout>

            </TableRow>                   
    </LinearLayout>   
</LinearLayout> 

how I can align one image view and textview right aligned. 如何将一个图像视图和textview对齐。

Check out this one and let me know if it is what you want. 看看这个,让我知道它是不是你想要的。

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="6"
    android:background="@drawable/ic_launcher"
    android:gravity="center"
    android:orientation="vertical" >

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="6"
        android:background="@android:color/black"
        android:gravity="center" >

        <RelativeLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/txtName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:text="Magasin"
                android:textColor="#FFF"
                android:textSize="18sp"
                android:textStyle="bold" />

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="right"
                android:src="@drawable/ic_launcher"
                android:layout_toLeftOf="@+id/tvCredits" />

            <TextView
                android:id="@+id/tvCredits"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:text="test"
                android:textColor="#fff"
                android:textSize="16sp" />
        </RelativeLayout>
    </TableRow>
</LinearLayout>

EDIT : If you want to make the same layout with easier and more efficient way, you can use this one. 编辑:如果你想以更简单,更有效的方式制作相同的布局,你可以使用这个。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/black" >

<TextView
    android:id="@+id/txtName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_centerVertical="true"
    android:text="Magasin"
    android:textColor="#FFF"
    android:textSize="18sp"
    android:textStyle="bold" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_toLeftOf="@+id/tvCredits"
    android:src="@drawable/ic_launcher" />

<TextView
    android:id="@+id/tvCredits"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true"
    android:text="test"
    android:textColor="#fff"
    android:textSize="16sp" />

</RelativeLayout>
// try this way
<?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="wrap_content"
    android:gravity="center"
    android:padding="5dp"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/txtName"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:text="Magasin"
        android:textColor="#FFF"
        android:gravity="center"
        android:textSize="18sp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal">

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_launcher"
            android:adjustViewBounds="true"/>

        <TextView
            android:id="@+id/tvCredits"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="test"
            android:textColor="#fff"
            android:textSize="16sp"
            android:layout_marginLeft="5dp"/>
    </LinearLayout>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" 
android:gravity="right">


<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:orientation="horizontal" >

<LinearLayout
    android:layout_width="0dip"
    android:layout_height="fill_parent"
    android:layout_weight="6"
    android:background="@drawable/transbg"
    android:gravity="center"
    android:orientation="vertical" > 
        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="fill_parent"
            android:layout_height="0dip"
            android:layout_weight="6"   
            android:gravity="center"    
            >
           <TextView
           android:id="@+id/txtName"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"                               
           android:text="Magasin"
           android:textColor="#FFF"               
           android:textSize="18sp"
           android:textStyle="bold" />

           <LinearLayout
               android:layout_width="wrap_content"
               android:layout_height="wrap_content" 
               android:layout_weight="0"
               android:gravity="right|center"
               android:orientation="horizontal">

               <ImageView
                   android:id="@+id/imageView1"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
                   android:gravity="right"
                   android:src="@drawable/yellow2" />

               <TextView
                   android:id="@+id/tvCredits"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
                   android:gravity="right"
                   android:text="test"
                   android:textColor="#fff"
                   android:textSize="16sp" />
           </LinearLayout>

        </TableRow>                   
       </LinearLayout>   
      </LinearLayout> 

      </LinearLayout>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM