TextView en Android se usa para mostrar texto o secuencia de caracteres, más conocidos como strings. Estas strings se pueden codificar de forma rígida y también se pueden declarar durante el tiempo de ejecución. El texto, en general, se muestra en un formato sin procesar donde se aplica el mismo formato de texto a cada carácter presente en la string. Si deseamos aplicar estilos, el formato se aplica a toda la string. No existe una disposición directa para aplicar diferentes estilos a diferentes caracteres.
Por lo tanto, en este artículo, le mostraremos cómo puede aplicar estilos a substrings o tramos de strings mediante programación en Android.
Implementación paso a paso
Paso 1: crea un nuevo proyecto en Android Studio
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Demostramos la aplicación en Kotlin , así que asegúrese de seleccionar Kotlin como idioma principal al crear un nuevo proyecto.
Paso 2: trabajar con el archivo activity_main.xml
Vaya a la aplicación > res > diseño > actividad_principal.xml y agregue el siguiente código a ese archivo. A continuación se muestra el código para el archivo activity_main.xml . Agregue un TextView en el archivo de diseño. Este TextView mostrará nuestro texto formateado.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/text_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerInParent="true" android:gravity="center" android:textSize="20sp"/> </RelativeLayout>
Paso 3: trabajar con el archivo MainActivity.kt
Vaya al archivo MainActivity.kt y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.kt . Se agregan comentarios dentro del código para comprender el código con más detalle.
Kotlin
import android.graphics.Typeface import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.text.SpannableString import android.text.Spanned import android.text.style.StyleSpan import android.widget.TextView class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Declaring TextView from the layout file val mTextView = findViewById<TextView>(R.id.text_view) // Declaring a string val mString = "GeeksforGeeks is a Computer Science portal for Geeks" // Getting a spannable string from the previous string val mSpannableString = SpannableString(mString) // Declaring Style Spans of different types val mBoldSpan = StyleSpan(Typeface.BOLD) val mItalicSpan = StyleSpan(Typeface.ITALIC) val mBoldItalicSpan = StyleSpan(Typeface.BOLD_ITALIC) // Applying style spans to the spannable string mSpannableString.setSpan(mBoldSpan, 0, 13, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) mSpannableString.setSpan(mItalicSpan, 19, 35, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) mSpannableString.setSpan(mBoldItalicSpan, 47, 52, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) // Displaying the formatted // spannable string in the TextView mTextView.text = mSpannableString } }
Producción:
Puede ver que la string se ha formateado en diferentes tramos.
Publicación traducida automáticamente
Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA