En realidad, esto no funciona con estilos de sombra. Si desea cambiar la sombra, debe hacerlo de esta manera: lockText.setShadowLayer (20, 4, 4, 0xFFFF0000);
Lukas
3
Para evitar la verificación del SDK, puede usar TextViewCompat.setTextAppearance (myTextView, R.style.myStyle);
Justin Fiedler
90
Como sugirió Jonathan, usando textView.setTextTypefaceWorks, lo usé en una aplicación hace unos segundos.
textView.setTypeface(null,Typeface.BOLD);// Typeface.NORMAL, Typeface.ITALIC etc.
textView.setTypeface (null, Typeface.BOLD) es lo que funcionó para mí. Por supuesto, podría usar 1 en su lugar, pero supongo que no es una buena práctica ingresar constantes manualmente. Utilice mejor las variables predefinidas en las bibliotecas.
Pijusn
4
No anime a la gente a usar ints en lugar de constantes
Chris.Jenkins
3
¡Buena! Mi error fue que estaba enviando mi tipografía antigua en el primer parámetro. Entonces funciona cuando cambio NORMAL -> NEGRITA pero no NEGRITA -> NORMAL. ¡No sabía que el primer parámetro podría ser nulo! ¡Ahora me funciona bien!
Puede hacerlo mediante programación usando setTypeface ():
textView.setTypeface(null,Typeface.NORMAL);// for Normal Text
textView.setTypeface(null,Typeface.BOLD);// for Bold only
textView.setTypeface(null,Typeface.ITALIC);// for Italic
textView.setTypeface(null,Typeface.BOLD_ITALIC);// for Bold and Italic
Esto cambia el tipo de letra. no el estilo especificado por el OP.
HBG
Es cierto, aún así, este era el método más simple, y por lo que recuerdo, el único método en el momento de la publicación. Mientras tanto, no estoy seguro de si se agregó un nuevo método de API que permite cambiar el "estilo" a negrita sin alterar el tipo de letra. Por favor corrígeme si estoy equivocado.
aquí, obtendrá el tipo de letra actual de esta vista de texto y lo reemplazará con el nuevo tipo de letra. Aquí hay un nuevo tipo de letra, DEFAULT_BOLDpero puede aplicar muchos más.
Para diseñar sus cadenas, adjunte objetos android.text.style. * A SpannableString, o consulte la documentación de Tipos de recursos disponibles para ver un ejemplo de cómo configurar texto formateado en el archivo de recursos XML.
Dependiendo del estilo que desee establecer, debe utilizar diferentes métodos. TextAppearance tiene su propio setter, TypeFace tiene su propio setter, background tiene su propio setter, etc.
Respuestas:
Hice esto creando un nuevo archivo XML de la
res/values/style.xml
siguiente manera:También tengo entradas en mi archivo "strings.xml" como este:
Luego, en mi código creé un ClickListener para atrapar el evento tap en ese TextView: EDITAR: A partir de API 23, 'setTextAppearance' está en desuso
Para volver a cambiarlo, usaría esto:
fuente
Como sugirió Jonathan, usando
textView.setTextTypeface
Works, lo usé en una aplicación hace unos segundos.fuente
Lo configura desde el código. Tipografía
fuente
Programáticamente: tiempo de ejecución
Puede hacerlo mediante programación usando setTypeface ():
XML: tiempo de diseño
También puede establecer en XML:
Espero que esto ayude
Summved
fuente
Descubrí
textView.setTypeface(Typeface.DEFAULT_BOLD);
que es el método más simple.fuente
prueba esta línea de código.
aquí, obtendrá el tipo de letra actual de esta vista de texto y lo reemplazará con el nuevo tipo de letra. Aquí hay un nuevo tipo de letra,
DEFAULT_BOLD
pero puede aplicar muchos más.fuente
Ver doco para setText () en TextView http://developer.android.com/reference/android/widget/TextView.html
fuente
Dependiendo del estilo que desee establecer, debe utilizar diferentes métodos. TextAppearance tiene su propio setter, TypeFace tiene su propio setter, background tiene su propio setter, etc.
fuente