En Android, el nombre del recurso es el nombre asignado a un recurso al declararlo en el código o en el XML. El nombre del recurso tiene el formato:
[<package_name>.]R.<resource_type>.<resource_name>
dónde
- <package_name> es el nombre del paquete donde se almacena el recurso
- <resource_type> es una subclase R para el tipo de recurso (dibujable, string, color, etc.)
- <resource_name> es el nombre del recurso si se declara en el elemento de diseño (android: nombre) o un nombre de archivo sin extensión
A continuación se muestra cómo declaramos un recurso en el código y en XML:
- En el código: R.string.geeksforgeeks
- En XML: @string/geeksforgeeks
En este artículo, le mostraremos cómo puede obtener el nombre del recurso utilizando la identificación del recurso.
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 botón y un TextView en el archivo de diseño.
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"> <!-- We shall find the resource name of this Button --> <!-- Also, if we click this button, we shall get the desired results in the TextView below --> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="click" android:layout_centerInParent="true"/> <!-- This TextView shall display the resource name when the above button is clicked --> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:gravity="center" android:layout_above="@id/button"/> </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. Obtenga la identificación del recurso y obtenga y muestre el nombre del recurso al hacer clic en el botón.
Kotlin
import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Button import android.widget.TextView class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Declaring and initializing the button // and text view from the layout file val mButton = findViewById<Button>(R.id.button) val mTextView = findViewById<TextView>(R.id.textView) // Fetching the id of the button (resource val resourceId = mButton.id // Getting the name of the resource val resourceName = resources.getResourceName(resourceId) // When button is clicked, the text view // will display the value of resourceName mButton.setOnClickListener { mTextView.text = resourceName.toString() } } }
Producción:
Puede ver que al hacer clic en el botón, el nombre del recurso se muestra en TextView.
Publicación traducida automáticamente
Artículo escrito por aashaypawar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA