Wie kann man den TextView
Stil (fett oder kursiv) in Java und ohne Verwendung des XML-Layouts festlegen ?
Mit anderen Worten, ich muss android:textStyle
mit Java schreiben .
textView.setTypeface(null, Typeface.BOLD_ITALIC);
textView.setTypeface(null, Typeface.BOLD);
textView.setTypeface(null, Typeface.ITALIC);
textView.setTypeface(null, Typeface.NORMAL);
So behalten Sie die vorherige Schrift bei
textView.setTypeface(textView.getTypeface(), Typeface.BOLD_ITALIC)
textView.setTypeface(textView.getTypeface(), Typeface.NORMAL);
entfernt kein fett oder kursiv gestyltes Styling von aTextView
. Sie müssen dafür verwendentextView.setTypeface(null, Typeface.NORMAL);
.textView.setTypeface(Typeface.create(textView.getTypeface(), Typeface.NORMAL), Typeface.NORMAL);
Versuchen Sie dies,
TextView
um Fett oder Kursiv zu setzenquelle
tv.setTypeface(Typeface.create(tv.getTypeface(), Typeface.NORMAL));
tv.setTypeface(null, Typeface.BOLD);
wird dies nicht dasselbe tun (einen vorhandenen Schriftstil löschen)?Programmatisch:
Sie können programmgesteuert Folgendes verwenden
setTypeface()
:XML:
Sie können direkt in einer XML-Datei Folgendes festlegen
<TextView />
:quelle
with in Java and without using XML
Übrigens Es wird auch anderen helfen.Sie haben zwei Möglichkeiten:
Option 1 (funktioniert nur fett, kursiv und unterstrichen):
Option 2:
Verwenden Sie ein Spannable ; Es ist komplizierter, aber Sie können die Textattribute dynamisch ändern (nicht nur fett / kursiv, sondern auch farbig).
quelle
typeFace
Sie einen einzelnen Stil für den gesamten Text festlegen.Programmatisch:
Sie können programmgesteuert Folgendes tun
setTypeface()
:Unten finden Sie den Code für die Standardschrift
und wenn Sie eine benutzerdefinierte Schriftart festlegen möchten :
XML:
Sie können direkt in der XML-Datei Folgendes festlegen
<TextView />
:Oder Sie können Ihre Lieblingsschriftart (aus Assets) festlegen. Weitere Informationen finden Sie unter Link
quelle
Jetzt legen Sie die
textview
Eigenschaften fest ..quelle
Einfach, wenn Sie Text fett machen möchten . Schreiben Sie diese Zeile in Ihr Layout in der Eigenschaft Textansicht
quelle
quelle
Es wäre
und kursiv sollte ersetzt sein können ,
Typeface.DEFAULT_BOLD
mitTypeface.DEFAULT_ITALC
.Lassen Sie mich wissen, wie es funktioniert.
quelle
Versuchen Sie dies, um Ihren
TextView
Stil durch Java-Code festzulegenquelle
Verwenden Sie
textView.setTypeface(Typeface tf, int style);
diese Option , um die Stileigenschaft von festzulegenTextView
. Weitere Informationen finden Sie in der Entwicklerdokumentation .quelle
Versuche dies:
quelle
Versuche dies:
quelle
Die Standardmethode hierfür ist die Verwendung der benutzerdefinierten Stile. Ex-
In
styles.xml
fügen Sie die folgende.Wenden Sie diesen Stil
TextView
wie folgt auf Ihren an.quelle
Eine Möglichkeit ist:
Eine weitere Option, wenn Sie die vorherige Schrift beibehalten und die zuvor angewendete Schrift nicht verlieren möchten:
quelle
So behalten Sie die vorherige Schrift bei
quelle
Sie können Folgendes versuchen:
quelle
Der einfachste Weg, den Sie basierend auf den Stilauswahlkriterien machen können, ist:
quelle
Da ich eine benutzerdefinierte Schriftart verwenden möchte, funktioniert für mich nur die Verbindung mehrerer Antworten. Offensichtlich wurden Einstellungen in meinem
layout.xml
Likeandroid:textStlyle="italic"
von AOS ignoriert. Also musste ich endlich Folgendes tun: Instrings.xml
der Zielzeichenfolge wurde deklariert als:dann zusätzlich im Code:
Ich habe die
Spannable
Option nicht ausprobiert (von der ich annehme, dass sie funktionieren muss), aberhatte keine Wirkung. Auch wenn ich das
italic tag
aus demstrings.xml
Alleinlassen entfernesetTypeface()
, hat es auch keine Wirkung. Tricky Android ...quelle
Und wie hier erläutert , müssen Sie die öffnenden Klammern umgehen, wenn Sie Parameter für Android Developers String Resources verwenden müssen, wenn Sie Parameter in Ihrer gestalteten Textressource verwenden müssen
und rufe formatHtml (string) auf
quelle
In meinem Fall:
1 - Text einstellen
2 - Schriftart einstellen
quelle
Dies ist das einzige, was bei einem OnePlus 5T funktioniert hat, der mit der OnePlus Slate ™ -Schrift konfiguriert ist:
Andere Methoden würden dazu führen, dass Roboto entweder auf BOLD oder NORMAL zurückgreift.
quelle
Wenn Sie vereinfachte Tags mit AndroidX verwenden, sollten Sie HtmlCompat.fromHtml () verwenden.
quelle
Der beste Weg ist, es in zu definieren
styles.xml
Und aktualisieren Sie es in
TextView
quelle
Verwenden Sie die obige Methode, um die Schrift programmgesteuert festzulegen.
quelle
1) Sie können es mit TypeFace einstellen. 2) Sie können direkt in strings.xml (in Ihrem Werteordner) verwenden. 3) Sie können String myNewString = "Dies ist mein fett gedruckter Text. Dies ist mein kursiver String. Dies ist mein unterstrichener String
quelle
Sie können die verschiedenen Schriftarten anhand des folgenden Beispiels einstellen -
Oder wenn Sie eine andere Schriftart und deren Schriftart festlegen möchten. Fügen Sie es dem Asset oder Raw-Ordner hinzu und verwenden Sie es dann wie folgt
quelle