Farklı biçimlendirmeye sahip bir metin satırına nasıl sahip olabilirim?
Örneğin:
Merhaba Dünya
Yanıtlar:
RichText widget'ını kullanmalısınız .
Bir RichText widget'ı, TextSpans alt öğelerinin bir listesini de içerebilen bir TextSpan widget'ını alır.
Her TextSpan widget'ı farklı bir TextStyle'a sahip olabilir .
Oluşturulacak örnek kod: Merhaba Dünya
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)),
],
),
);
Aşağıdaki cevap, bir paragraf için değil, birkaç kelime için en iyisidir.Özel bir metni biçimlendirmeniz gereken uzun bir cümleniz veya paragrafınız varsa, yukarıdaki cevapta @DvdWasibi tarafından önerildiği gibi RichText kullanmayı tercih edin.
Kodumu kısa ve temiz tutmayı seviyorum, bunu nasıl yapardım? Bir satırda biri Normal yazı tipi diğeri kalın olmak üzere iki metin alanı eklerim ,
Not: Uzun bir paragraf, Başlıklar vb. İçin iyi göründüğünde bu iyi görünmeyebilir.
Row(children: <Widget>[
Text("Hello"),
Text("World", style: TextStyle(fontWeight: FontWeight.bold))
])
`
ve "Merhaba Dünya " olarak istediğiniz çıktıyı almalısınız
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?'),
],
),
);