Когда я устанавливаю передний план для кнопки, она отлично отображается в Android Studio, но когда я пробую ее на своем телефоне, я не вижу выбранное изображение. Вот свежий проект, чтобы проверить это:

Left is from phone screenshot, right is from Android Studio

Что-то не так с настройками Android Studio или это просто мой телефон?

<TextView
    android:layout_width="wrap_content"
    android:layout_height="100dp"
    android:text="Hello World!"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:foreground="@mipmap/ic_launcher"
    android:foregroundGravity="center" />

А вот простой код Hello World.

3
C.S. 24 Дек 2015 в 17:55

2 ответа

Лучший ответ

Атрибут android:foreground предназначен для селектора переднего плана (добавлен в FrameLayout). Он не предназначен для простого рисования изображения.

Атрибут android:foreground для textView отсутствует. а также не имеет смысла помещать изображение на передний план на textView. Чтобы узнать больше о свойствах и методах для textView, перейдите на страницу разработчика Android.

А если вы хотите добавить изображение на свою кнопку, используйте imageButton.

3
Shvet Chakra 24 Дек 2015 в 15:35

В качестве альтернативы я добавил изображение с помощью android:drawableLeft (в моем случае левое в порядке), и оно отображается нормально. Так что, если у кого-то есть подобные проблемы, android:drawableLeft тоже работает.

1
C.S. 28 Дек 2015 в 09:49