¿Cómo puedo tener una línea de texto con un formato diferente?
p.ej:
Hola mundo
Respuestas:
Debería utilizar el widget RichText .
Un widget RichText tomará un TextSpan widget que también puede tener una lista de TextSpans secundarios.
Cada widget de TextSpan puede tener un TextStyle diferente .
Aquí está el código de ejemplo para renderizar: Hello World
var text = new RichText(
text: new TextSpan(
// Note: Styles for TextSpans must be explicitly defined.
// Child text spans will inherit styles from parent
style: new TextStyle(
fontSize: 14.0,
color: Colors.black,
),
children: <TextSpan>[
new TextSpan(text: 'Hello'),
new TextSpan(text: 'World', style: new TextStyle(fontWeight: FontWeight.bold)),
],
),
);
La respuesta a continuación se ajusta mejor a un par de palabras y no a un párrafo.Si tiene una oración larga o un párrafo en el que necesita formatear un texto en particular, prefiera usar RichText como lo sugiere @DvdWasibi en la respuesta anterior.
Me gusta mantener mi código corto y limpio, así es como lo haría agregar dos campos de texto en una fila, uno con fuente Normal y otro en negrita ,
Nota: Es posible que esto no se vea bien si un párrafo largo se ve bien para titulares, etc.
Row(children: <Widget>[
Text("Hello"),
Text("World", style: TextStyle(fontWeight: FontWeight.bold))
])
`
y debería obtener el resultado deseado como "Hola mundo "
return RichText(
text: TextSpan(
text: 'Can you ',
style: TextStyle(color: Colors.black),
children: <TextSpan>[
TextSpan(
text: 'find the',
style: TextStyle(
color: Colors.green,
decoration: TextDecoration.underline,
decorationStyle: TextDecorationStyle.wavy,
),
recognizer: _longPressRecognizer,
),
TextSpan(text: 'secret?'),
],
),
);