En Android, cuando tenemos que formatear los números de cualquier TextView, usamos la clase «NumberFormat» que es la clase base de todos los métodos de formateo. Por lo tanto, se utilizan diferentes métodos de formato para los diferentes tipos de formato. De esta forma, cuando tenemos que especificar los números para un lugar en particular, se usa el método getInstance. Por ejemplo: getNumberInstance() se usa para encontrar un formato de número entero, getPercentInstance() se usa para mostrar que el número es un porcentaje, como 0.53 a 53% y getCurrencyInstance para obtener el formato de moneda. Sobre el cual vamos a discutir aquí.
¿Qué vamos a construir en este artículo?
Vamos a crear una aplicación en la que obtengamos un número como entrada y lo mostremos con el símbolo de moneda usando el método getcurrencyInstance. Componentes de aplicación.
- EditText para tomar entrada
- TextView para sugerir
- Botón , cuando se hace clic muestra el resultado
- Otro TextView para mostrar el resultado
Veamos la implementación de la codificación a continuación.
Implementación paso a paso
Paso 1: Crear un nuevo proyecto
Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Kotlin como lenguaje de programación.
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 .
XML
<?xml version="1.0" encoding="utf-8"?> <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/teal_200" android:orientation="vertical" tools:context=".MainActivity"> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginTop="20dp" android:autofillHints="@string/enter_an_amount" android:hint="@string/enter_an_amount" android:textColor="@color/black" android:textSize="30sp" android:textStyle="bold" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginTop="20dp" android:text="@string/amount" android:textColor="@color/black" android:textSize="30sp" android:textStyle="bold" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginTop="20dp" android:onClick="showValue" android:text="@string/show_value" /> <TextView android:id="@+id/output" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="10dp" android:layout_marginTop="20dp" android:textColor="@color/black" android:textSize="30sp" android:textStyle="bold" /> </androidx.appcompat.widget.LinearLayoutCompat>
Paso 3: trabajar con el archivo strings.xml
aplicación > res > valores > strings.xml strings.xml
XML
<resources> <string name="app_name">Geeksforgeeks Currency adder</string> <string name="amount">Amount you entered with currency sign is</string> <string name="show_value">Show Value</string> <string name="enter_an_amount">Enter an amount</string> </resources>
Paso 4: trabajar con el archivo MainActivity.java
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.os.Bundle import android.view.View import android.widget.EditText import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import java.util.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } fun showValue(view: View) { // variable editText to get the id of editText val editText: EditText = findViewById(R.id.editText) // we've id in editText variable, convert it into Int val value: String = editText.text.toString() // get the currency of local system val currency: Currency = Currency.getInstance(Locale.getDefault()) // store the currency sign in symbol variable val symbol: String = currency.symbol val message = "$symbol$value" // now again find the id of output textView val textView: TextView = findViewById(R.id.output) // set the message value in it with sign // first way textView.text = message // second way // message.also { textView.text = it } // following line tells us how we can add any specific currency // val newCurrency: Currency = Currency.getInstance("EUR") // and everything will be same } }
Y esto es lo que obtenemos.
Producción:
Publicación traducida automáticamente
Artículo escrito por patelajeet y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA