无法在列表视图的最右侧设置切换按钮?

时间:2015-07-21 03:52:15

标签: android android-layout android-listview

我在我的Android应用程序中使用了列表视图。我在listview中使用了切换按钮。我想在listview的右下角设置切换按钮。但我无法做同样的事情。所以请帮帮我....我的xml文件的代码片段在这里......

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

    android:orientation="horizontal"
    >

    <LinearLayout
        android:id="@+id/aaa"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_gravity="center_vertical"
        android:layout_marginRight="8dip"
        android:background="@drawable/image_bg"
        android:padding="3dip">

        <ImageView
            android:id="@+id/list_image"
            android:layout_width="50dip"
            android:layout_height="50dip"

            android:src="@drawable/rihanna" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">


        <!-- Name Label -->





       <TextView
           android:id="@+id/email"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content"
           android:paddingBottom="2dip"
           android:paddingTop="5dp"
           android:textColor="#acacac" />






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

    </LinearLayout>

    <ToggleButton
        android:id="@+id/toggleButton1"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:gravity="right"




        android:background="@drawable/toggle"
        android:text=""
        android:textOff=""
        android:textOn=""
        android:focusable="false">
    </ToggleButton>
    </LinearLayout>
 <!--
       <ImageView android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:src="@drawable/arrow"
           android:layout_alignParentRight="true"
           android:layout_centerVertical="true"
           android:layout_marginLeft="150dp"
           android:layout_marginTop="30dp"
           /> -->

</LinearLayout>

2 个答案:

答案 0 :(得分:0)

android:layout_alignParentLeft 

android:layout_alignParentRight

不是 LinearLayout 的属性。您必须使用 RelativeLayout 。看看我在xml中所做的更改,以便单选按钮在右边。(根据你的要求更改drawables,因为这是一个演示)

 <?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="wrap_content"

    android:orientation="horizontal"
    >

    <LinearLayout
        android:orientation="vertical"
        android:id="@+id/aaa"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_gravity="center_vertical"
        android:layout_marginRight="8dip"
        android:background="@drawable/abc_ic_commit_search_api_mtrl_alpha"
        android:padding="3dip"
        android:layout_alignBottom="@+id/list_image"
        android:layout_alignParentTop="true">

    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:orientation="vertical">


        <!-- Name Label -->


        <TextView
            android:id="@+id/email"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:paddingBottom="2dip"
            android:paddingTop="5dp"
            android:textColor="#acacac" />


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

        </LinearLayout>

        <ToggleButton
            android:id="@+id/toggleButton1"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:text=""
            android:textOff=""
            android:textOn=""
            android:focusable="false">
        </ToggleButton>
    </LinearLayout>

    <ImageView
        android:id="@+id/list_image"
        android:layout_width="50dip"
        android:layout_height="50dip"
        android:src="@drawable/abc_ic_ab_back_mtrl_am_alpha"
        android:layout_alignParentTop="true"
        android:layout_toRightOf="@+id/aaa"
        android:layout_toEndOf="@+id/aaa" />
    <!--
          <ImageView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:src="@drawable/arrow"
              android:layout_alignParentRight="true"
              android:layout_centerVertical="true"
              android:layout_marginLeft="150dp"
              android:layout_marginTop="30dp"
              /> -->

</RelativeLayout>

答案 1 :(得分:0)

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

    android:orientation="horizontal"
    >

    <LinearLayout
        android:id="@+id/aaa"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_gravity="center_vertical"
        android:layout_marginRight="8dip"
        android:background="@drawable/image_bg"
        android:padding="3dip">

        <ImageView
            android:id="@+id/list_image"
            android:layout_width="50dip"
            android:layout_height="50dip"

            android:src="@drawable/rihanna" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="vertical">


        <!-- Name Label -->





       <TextView
           android:id="@+id/email"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content"
           android:paddingBottom="2dip"
           android:paddingTop="5dp"
           android:textColor="#acacac" />






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

    </LinearLayout>

    <ToggleButton
        android:id="@+id/toggleButton1"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:gravity="right"
    android:layout_gravity="right"




        android:background="@drawable/toggle"
        android:text=""
        android:textOff=""
        android:textOn=""
        android:focusable="false">
    </ToggleButton>
    </LinearLayout>
 <!--
       <ImageView android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:src="@drawable/arrow"
           android:layout_alignParentRight="true"
           android:layout_centerVertical="true"
           android:layout_marginLeft="150dp"
           android:layout_marginTop="30dp"
           /> -->

</LinearLayout>

试试这个。我已经在布局中添加了android:layout_weight =“1”     android:layout_gravity =“right”用于切换按钮。