#android #textview #firebase-storage #spannable #html-formatting
#Android #HTML #TextView #firebase-хранилище #расширяемый
Вопрос:
Я загружаю html-файл из хранилища Firebase и показываю его в TextView как заполняемый. Проблема в том, что я получаю информацию о форматировании вместе с отображаемым текстом:
Прокручивая эту информацию о форматировании, я правильно получаю реальный текст, но без исходного цвета «желтый», он просто черный.
Вот метод, который получает файл из хранилища Firebase:
private fun fetchInfoData(){
val database = Firebase.database
val ref = database.getReference("aboutUs")
ref.addListenerForSingleValueEvent(object: ValueEventListener{
override fun onCancelled(p0: DatabaseError) {
}
override fun onDataChange(ds: DataSnapshot) {
if(ds.exists()){
val aboutUs = ds.getValue<AboutUs>() as AboutUs
val storage = Firebase.storage
val fileUrl = aboutUs.fileUrl
fileUrl?.let {
val fileRef = storage.getReferenceFromUrl(aboutUs.fileUrl)
val ONE_MEGABYTE: Long = 1024 * 1024
fileRef.getBytes(ONE_MEGABYTE).addOnSuccessListener {
val html = it.toString(Charsets.UTF_8)
Log.e("HTML IS: >>>>>", " HTML: " html)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
binding.tvAbout.text = Html.fromHtml(html, Html.FROM_HTML_MODE_COMPACT)
}
else {
binding.tvAbout.text = Html.fromHtml(html)
}
}.addOnFailureListener {
Log.e("<<< ERROR FILE REF >>>", "EXCEPTION: " it)
}
}
}
}
})
}
Я получаю этот HTML-код в журнале:
p.p1 {поле: 0.0px 0.0px 0.0px 0.0px 0.0px; шрифт: 24.0px Arial; цвет: #ffff00} p.p2 {поле: 0.0px 0.0px 0.0px 0.0px; шрифт: 24.0px Arial; цвет: #ffff00; минимальная высота: 28.0px} p.p3 {поле: 0,0 пикселей 0,0 пикселей 0,0 пикселей 0,0 пикселей; шрифт: 20,0 пикселей Arial; цвет: #ffff00} p.p4 {поле: 0,0 пикселей 0,0 пикселей 0,0 пикселей 0,0 пикселей; шрифт: 20,0 пикселей Arial; цвет: #ffff00; минимальная высота: 23,0 пикселей} p.p5 {поле: 0,0 пикселей 0,0 пикселей 0,0 пикселей 0,0 пикселей 0,0 пикселей; выравнивание текста: выравнивание по ширине; шрифт: 20,0 пикселей Arial; цвет: #ffff00} span.s1 {оформление текста: подчеркивание} Введение:
…Думаю, мне нужно только тело без головы. Как нам устранить заголовок?