Eu tenho um RelativeLayout
contêiner com fundo azul. Dentro dele eu tenho um elemento TextView, mas por algum motivo o plano de fundo é renderizado na parte superior do meu texto e não atrás dele.
Aqui está meu código:
<RelativeLayout
android:id="@+id/my_widget"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="130dp"
android:layout_height="130dp"
android:background="@drawable/layout_bg">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="?"
android:textSize="80dp"
/>
</LinearLayout>
</RelativeLayout>
Meu Bg
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#00aaff"/>
<corners android:radius="15dp"/>
<padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" />
</shape>
Resultado:
Defina qualquer cor para TextView como:
Isso se deve à cor de primeiro plano do texto padrão do Android.
Defina qualquer TextColor para a visualização de texto.
Opção 1: use FrameLayout em vez do layout relativo.
Opção 2: experimente Elevação em seu layout filho.