Как создать ImageButton с наложенным изображением?

#android #android-widget #imagebutton

#Android #android-виджет #imagebutton

Вопрос:

У меня есть кнопка, которая начинается как заполнитель, но как только пользователь проходит аутентификацию, она меняется на пользовательское изображение для этого пользователя.

 <ImageButton android:id="@ id/button"
             android:background="@null"
             android:layout_height="wrap_content"
             android:layout_width="wrap_content"
             android:src="@drawable/button_default"/>
  

А затем позже:

 ImageButton ib = (ImageButton)findViewById(R.id.button);
ib.setImageBitmap(previouslyDecodedBitmap);
  

Но это выглядит ужасно. Я не могу понять, как правильно оформить его, чтобы вновь декодированное растровое изображение имело нужный размер и вело себя как ImageButton . Я подозреваю, что есть какая-то комбинация виджетов, которые я могу использовать не ImageButton для достижения этой цели? Я надеялся, что смогу просто вложить ImageView поверх ImageButton , добавив его как дочерний элемент в ImageButton , но, похоже, это запрещено (это в Silverlight …).

В любом случае, любые предложения о том, как правильно это сделать, приветствуются. Спасибо.

Ответ №1:

Одним из способов было бы использовать макет фрейма и разместить кнопки и изображение друг над другом, вверху — imageview , сохранить его невидимым (android: visibility = «невидимый»)
При нажатии на кнопку и аутентификации сделайте его видимым над кнопкой или даже вы можете скрыть кнопку ниже и показывать только изображение сверху.

Комментарии:

1. Это на самом деле то, что я в итоге сделал. Спасибо.