texto studio sombras sombra personalizado estilos elevacion con boton borde android

sombras - texto con borde android studio



Android: ¿sombra en el texto? (5)

Me pregunto cómo agregar sombra en el texto en Android?

Tengo el siguiente código que se aplica en un mapa de bits y quería ser sombreado ...

paint.setColor(Color.BLACK); paint.setTextSize(55); paint.setFakeBoldText(false); paint.setShadowLayer(1, 0, 0, Color.BLACK); //This only shadows my whole view...

Agradecido por cualquier consejo!


Debería poder agregar el estilo, así (tomado del código fuente para Ringdroid):

<style name="AudioFileInfoOverlayText"> <item name="android:paddingLeft">4px</item> <item name="android:paddingBottom">4px</item> <item name="android:textColor">#ffffffff</item> <item name="android:textSize">12sp</item> <item name="android:shadowColor">#000000</item> <item name="android:shadowDx">1</item> <item name="android:shadowDy">1</item> <item name="android:shadowRadius">1</item> </style>

Y en su diseño, use el estilo de esta manera:

<TextView android:id="@+id/info" android:layout_width="fill_parent" android:layout_height="wrap_content" style="@style/AudioFileInfoOverlayText" android:gravity="center" />

Editar: el código fuente se puede ver aquí: https://github.com/google/ringdroid

Editar2: para configurar este estilo mediante programación, harías algo como esto (modificado a partir de este ejemplo para unir los recursos de ringdroid de arriba)

TextView infoTextView = (TextView) findViewById(R.id.info); infoTextView.setTextAppearance(getApplicationContext(), R.style.AudioFileInfoOverlayText);

La firma de setTextAppearance es

public void setTextAppearance (contexto contexto, int resid)

Desde: Nivel de API 1
Establece el color del texto, el tamaño, el estilo, el color de la sugerencia y el color de resaltado del recurso TextAppearance especificado.


Dibuja 2 textos: uno gris (será la sombra) y encima dibuja el segundo texto (coordenada y y 1px más que texto sombreado).


Puede hacer ambos en código y XML. Solo 4 cosas básicas para establecer.

  1. color de sombra
  2. Shadow Dx: especifica el desplazamiento del eje X de la sombra. Puede dar valores - / +, donde -Dx dibuja una sombra a la izquierda del texto y + Dx a la derecha
  3. sombra Dy: especifica el desplazamiento del eje Y de la sombra. -Dy especifica una sombra sobre el texto y + Dy especifica debajo del texto.
  4. radio de sombra: especifica cuánto debe difuminarse la sombra en los bordes. Proporcione un valor pequeño si la sombra necesita ser prominente. De lo contrario de lo contrario.

p.ej

android:shadowColor="@color/text_shadow_color" android:shadowDx="-2" android:shadowDy="2" android:shadowRadius="0.01"

Esto dibuja una sombra prominente en el lado inferior izquierdo del texto. En el código, puede agregar algo como esto;

TextView item = new TextView(getApplicationContext()); item.setText(R.string.text); item.setTextColor(getResources().getColor(R.color.general_text_color)); item.setShadowLayer(0.01f, -2, 2, getResources().getColor(R.color.text_shadow_color));


Si desea lograr una sombra como la que hace Android en el Iniciador, estamos administrando estos valores. Son útiles si desea crear TextViews que aparecerán como un widget, sin fondo.

android:shadowColor="#94000000" android:shadowDy="2" android:shadowRadius="4"


<style name="WhiteTextWithShadow" parent="@android:style/TextAppearance"> <item name="android:shadowDx">1</item> <item name="android:shadowDy">1</item> <item name="android:shadowRadius">1</item> <item name="android:shadowColor">@android:color/black</item> <item name="android:textColor">@android:color/white</item> </style>

luego usar como

<TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="15sp" tools:text="Today, May 21" style="@style/WhiteTextWithShadow"/>