Como usar o método getCurrencyInstance no Android?
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.
- Editar Texto para receber entrada
- TextView para sugerir
- Botão , quando clicado mostra o resultado
- 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:
Janela de saída do aplicativo
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva