No Android, quando temos que formatar os números de qualquer TextView, usamos a classe “NumberFormat” que é a classe base de todos os métodos de formatação. Portanto, diferentes métodos de formatação são usados ​​para os diferentes tipos de formatação. Desta forma, quando temos que especificar os números para uma localidade particular, o método getInstance é usado. Por exemplo: getNumberInstance() é usado para encontrar um formato de número inteiro, getPercentInstance() é usado para mostrar o número em porcentagem, como 0,53 a 53% e getCurrencyInstance para obter o formato de moeda. Sobre o que vamos discutir aqui.

O que vamos construir neste artigo? 

Vamos construir um aplicativo no qual obtemos algum número como entrada e o mostramos com o símbolo da moeda usando o método getcurrencyInstance. Componentes de aplicação.

  1. Editar Texto para receber entrada
  2. TextView para sugerir
  3. Botão , quando clicado mostra o resultado
  4. Outro TextView para mostrar o resultado

Vamos ver a implementação de codificação abaixo.

Implementação passo a passo

Etapa 1: Criar um novo projeto

Para criar um novo projeto no Android Studio, consulte Como criar / iniciar um novo projeto no Android Studio . Observe que selecione Kotlin como a linguagem de programação.

Etapa 2: Trabalhar com o arquivo activity_main.xml

Navegue até app> res> layout> activity_main.xml e adicione o código abaixo a esse arquivo. Abaixo está o código para o arquivo activity_main.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>

Etapa 3: Trabalhando com o arquivo strings.xml

Navegue até app> res> values> strings.xml e adicione o código abaixo a esse arquivo. Abaixo está o código para o arquivo strings.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>

Etapa 4: Trabalhar com o arquivo MainActivity.java

Acesse o arquivo MainActivity.kt e consulte o código a seguir. Abaixo está o código para o arquivo MainActivity.kt . Os comentários são adicionados dentro do código para entender o código em mais detalhes.

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
    }
  
}

E aqui está o que temos.

Saída:

Saída

Janela de saída do aplicativo

Quer um ambiente mais competitivo e acelerado para aprender os fundamentos do Android?
Clique aqui para acessar um guia com curadoria exclusiva de nossos especialistas com o objetivo de torná-lo pronto para a indústria em nenhum momento!