Esta sección fue evaluado por nuestros expertos para asegurar la veracidad de nuestro tutorial.
Solución:
Envuelva la palabra en un TextSpan y asigne style
propiedades para cambiar la apariencia del texto y usar RichText en lugar de Text
RichText( text: TextSpan( text: 'Hello ', style: DefaultTextStyle.of(context).style, children:
[ TextSpan(text: 'bold', style: TextStyle(fontWeight: FontWeight.bold)), TextSpan(text: ' world!'), ], ), )
o usar el Text.rich
constructor https://docs.flutter.io/flutter/widgets/Text-class.html
const Text.rich( TextSpan( text: 'Hello', // default text style children:
[ TextSpan(text: ' beautiful ', style: TextStyle(fontStyle: FontStyle.italic)), TextSpan(text: 'world', style: TextStyle(fontWeight: FontWeight.bold)), ], ), )
Aquí está mi código.
class HighlightText extends StatelessWidget
final String text;
final String highlight;
final TextStyle style;
final Color highlightColor;
const HighlightText(
Key key,
this.text,
this.highlight,
this.style,
this.highlightColor,
) : super(key: key);
@override
Widget build(BuildContext context)
String text = this.text ?? '';
if ((highlight?.isEmpty ?? true)
TextSpan _highlightSpan(String content)
return TextSpan(text: content, style: style.copyWith(color: highlightColor));
TextSpan _normalSpan(String content)
return TextSpan(text: content, style: style);
Reseñas y calificaciones
Si piensas que te ha sido de provecho este post, te agradeceríamos que lo compartas con otros entusiastas de la programación y nos ayudes a extender nuestra información.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)