Saya ingin membuat TextView
konten tebal, miring dan bergaris bawah. Saya mencoba kode berikut dan berhasil, tetapi tidak menggarisbawahi.
<Textview android:textStyle="bold|italic" ..
Bagaimana saya melakukannya? Ada ide cepat?
android
textview
text-styling
b-man
sumber
sumber
tv.setTypeface(null, Typeface.BOLD_ITALIC);
Jawaban:
Saya tidak tahu tentang garis bawah, tetapi untuk huruf tebal dan miring ada
"bolditalic"
. Tidak ada garis bawah di sini: http://developer.android.com/reference/android/widget/TextView.html#attr_android:textStylePikiran Anda bahwa untuk menggunakan yang disebutkan
bolditalic
Anda perlu, dan saya kutip dari halaman itujadi kamu akan gunakan
bold|italic
Anda dapat memeriksa pertanyaan ini untuk menggarisbawahi: Dapatkah saya menggarisbawahi teks dalam tata letak android?
sumber
textView.setPaintFlags(Paint.UNDERLINE_TEXT_FLAG);
Ini akan membuat TextView Anda tebal , bergaris bawah dan miring secara bersamaan.
strings.xml
Untuk mengatur String ini ke TextView Anda, lakukan ini di main.xml Anda
atau Di JAWA ,
Terkadang pendekatan di atas tidak akan membantu ketika Anda mungkin harus menggunakan Teks Dinamis. Jadi dalam hal ini SpannableString mulai beraksi.
KELUARAN
sumber
new StyleSpan(Typeface.BOLD_ITALIC)
Atau seperti ini di Kotlin:
Atau di Jawa:
Tetap sederhana dan dalam satu baris :)
sumber
paintFlags
perlu? Ini bekerja tanpa ituUntuk huruf tebal dan miring apa pun yang Anda lakukan benar untuk menggarisbawahi gunakan kode berikut
HelloAndroid.java
main.xml
string.xml
sumber
underline
lulus Null alih-alihnew UnderlineSpan()
sebagai berikutcontent.setSpan(null, 0, content.length(), 0);
Ini adalah cara mudah untuk menambahkan garis bawah, sambil mempertahankan pengaturan lain:
sumber
Programmatialy:
Anda dapat melakukannya secara terprogram menggunakan metode setTypeface ():
Di bawah ini adalah kode untuk Typeface default
dan jika Anda ingin mengatur Typeface khusus:
XML:
Anda dapat mengatur secara langsung dalam file XML seperti:
sumber
Jika Anda membaca teks itu dari file atau dari jaringan.
Anda dapat mencapainya dengan menambahkan tag HTML ke teks Anda seperti yang disebutkan
dan kemudian Anda bisa menggunakan kelas HTML yang memproses string HTML menjadi teks gaya yang dapat ditampilkan.
sumber
Tanpa tanda kutip bekerja untuk saya:
sumber
sumber
Hanya satu baris kode dalam xml
sumber
Anda dapat mencapainya dengan mudah dengan menggunakan Kotlin di
buildSpannedString{}
bawahcore-ktx
ketergantungannya.sumber