如何将切换按钮与图像按钮对齐

时间:2014-05-08 16:33:16

标签: android android-layout android-togglebutton

我正在使用切换按钮来选择收藏夹,并且我在同一行中还有其他几个图像按钮。但是,由于切换按钮的行为与图像按钮不相似,因此我的图标无法正确对齐。

此外,我还是以编程方式设置切换按钮的图像,因为它需要根据用户选择的内容更改按钮。我这样做编程:

  if (holder.favButton.isChecked())
     holder.favButton.setBackgroundDrawable(context.getResources().
          getDrawable(R.drawable.star_fill));
  else
     holder.favButton.setBackgroundDrawable(context.getResources().
          getDrawable(R.drawable.star_empty));

请参阅截图。此图像中的两个图标均为24 x 24

enter image description here

这是我的布局:

我尝试了几种组合,但似乎都没有效果

这是我的布局:

<LinearLayout
    android:id="@+id/share_c1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">

    <ToggleButton android:id="@+id/fav_rec"
        android:layout_width="35px"
        android:layout_height="35px"
        android:background="#ffffff"
        android:focusable="false"
        android:layout_marginRight="10dp"
        android:paddingBottom="15px"
        android:textOn="" android:textOff="" android:layout_alignParentLeft="true"
        />


    <ImageButton
        android:id="@+id/edit"
        android:layout_width="35px"
        android:layout_height="35px"
        android:background="#ffffff"
        android:focusable="false"
        android:layout_marginRight="10dp"
        android:layout_alignParentLeft="true"
        android:paddingBottom="5px"
        android:src="@drawable/pencil_1"/>
  </LinearLayout>

2 个答案:

答案 0 :(得分:0)

删除paddingBottomlayout_alignParentLeft上的ToggleButtonImageButton

然后将android:gravity="center_vertical"添加到您的育儿LinearLayoutandroid:gravity="center"添加到您的ToggleButtonImageButton

答案 1 :(得分:0)

// try this way,hope this will help you...

<LinearLayout
        android:id="@+id/share_c1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal">

        <ToggleButton
            android:id="@+id/fav_rec"
            android:layout_width="35dp"
            android:layout_height="35dp"
            android:background="#ffffff"
            android:focusable="false"
            android:layout_marginRight="10dp"
            android:paddingBottom="15dp"
            android:textOn=""
            android:textOff=""/>


        <ImageButton
            android:id="@+id/edit"
            android:layout_width="35dp"
            android:layout_height="35dp"
            android:background="#ffffff"
            android:focusable="false"
            android:layout_marginRight="10dp"
            android:paddingBottom="5dp"
            android:src="@drawable/ic_launcher"/>
    </LinearLayout>

Note : try use dp or dip insted of px in layout.