将ImageView对齐布局android右侧

时间:2012-02-21 07:41:07

标签: android android-layout

我有一个布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF">

    <TextView android:id="@+id/groupname"
         android:paddingLeft="50px"
         android:textSize="16px"
         android:background="#FFFFFF"
         android:textColor="#000000"
         android:textStyle="normal"
         android:layout_width="wrap_content"
         android:layout_height="50px"/>
     <ImageView
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_gravity="right"
             android:layout_marginRight="6dp"
             android:background="#ffffff" 
             android:src="@drawable/sort"/>

</LinearLayout>

Rendering like this presently I want to render like this

渲染正在发生,就像在第一张图像中一样,但我希望像第二张图像一样完全右对齐。任何帮助都会有用。

期待您的回复。 感谢。

8 个答案:

答案 0 :(得分:47)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF">

    <TextView android:id="@+id/groupname"
         android:paddingLeft="50dp"
         android:textSize="16dp"
         android:textColor="#000000"
         android:textStyle="normal"
         android:layout_width="fill_parent"
         android:layout_height="50dp"
         android:layout_weight="0.9"
         android:background="@color/black"/>
     <ImageView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_gravity="right"
             android:background="#ffffff" 
             android:src="@drawable/checkin"
             android:layout_weight="0.1"/>

</LinearLayout>
  

试试这个,希望这会有所帮助。

Prview1 enter image description here

答案 1 :(得分:26)

使用android:layout_weight =“1”进行文本视图

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:background="#FFFFFF">

  <TextView android:id="@+id/groupname"
     android:paddingLeft="50px"
     android:textSize="16px"
     android:layout_weight="1"
     android:background="#FFFFFF"
     android:textColor="#000000"
     android:textStyle="normal"
     android:layout_width="0dp"
     android:layout_height="50px"/>
 <ImageView
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="right"
         android:layout_marginRight="6dp"
         android:background="#ffffff" 
         android:src="@drawable/sort"/>

</LinearLayout>

答案 2 :(得分:12)

使用RelativeLayout作为父布局。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent">

    <TextView android:id="@+id/groupname"
              android:paddingLeft="50px"
              android:textSize="16px"
              android:textColor="#000000"
              android:textStyle="normal"
              android:layout_width="wrap_content"
              android:layout_height="50px"/>

    <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_marginRight="6dp"
            android:src="@drawable/ncc"/>

</RelativeLayout>

答案 3 :(得分:3)

<?xml version="1.0" encoding="utf-8"?>

<TextView android:id="@+id/groupname"
     android:paddingLeft="50px"
     android:textSize="16px"
     android:background="#FFFFFF"
     android:textColor="#000000"
     android:textStyle="normal"
     android:layout_width="wrap_content"
     android:layout_height="50px"/>
 <ImageView
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_gravity="right"
         android:layout_marginRight="6dp"
         android:background="#ffffff"
         android:layout_alignParentRight="true" 
         android:src="@drawable/sort"/>

答案 4 :(得分:3)

尝试使用RelativeLayout。

<?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="fill_parent"
    android:background="#FFFFFF">

    <TextView
        android:id="@+id/groupname"
        android:layout_width="wrap_content"
        android:layout_height="50px"
        android:background="#FFFFFF"
        android:paddingLeft="50px"
        android:textColor="#000000"
        android:textSize="16px"
        android:textStyle="normal" />

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:background="#ffffff"
        android:src="@drawable/ic_launcher" />

</RelativeLayout>

答案 5 :(得分:0)

使用RelativeLayout并设置TextView的属性,如下所示:

layout_width=fill_parent
layout_height=wrap_content
left_of="@+id/imgView"

和ImageView

layout_width=wrap_content
layout_height=wrap_content
alignparentright=true

答案 6 :(得分:0)

你应该在xml ...中添加这样的东西到你想要对齐的对象......

android:layout_alignParentRight="true" 
android:layout_marginRight="..dp"

答案 7 :(得分:0)

您可以使用drawableRight属性使它非常简单,例如以下示例:

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingLeft="50px"
    android:textSize="16sp"
    android:textStyle="normal"
    android:drawableRight="@drawable/ic_favorite_gray"/>