Как выровнять кнопку-переключатель с кнопкой изображения

Я использую кнопку-переключатель для выбора избранного, и у меня есть несколько других кнопок изображения в той же строке. Однако, поскольку кнопка переключения не похожа на кнопку изображения, мои значки не выравниваются должным образом.

Кроме того, я устанавливаю изображение для кнопки-переключателя программно, потому что она должна иметь измененную кнопку в зависимости от того, что выбрал пользователь. Я делаю это программно следующим образом:

  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.

введите здесь описание изображения

Это мой макет:

Я пробовал несколько комбинаций, но ни одна из них не работает

Это мой макет:

<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>

person birdy    schedule 08.05.2014    source источник


Ответы (1)


Удалите paddingBottom и layout_alignParentLeft на ToggleButton и ImageButton.

Затем добавьте android:gravity="center_vertical" к родительским LinearLayout и android:gravity="center" к ToggleButton и ImageButton.

person Evan Bashir    schedule 08.05.2014