Android Edittext Realtime Separate Number
Bagaimana ya caranya saat kita memasukkan angka sampai dengan angka ribuan secara realtime langsung dibatasi dengan titik(.) disetiap ribuan rupiahnya?
Pertanyaan diatas sangat sering terlintas di benak programmer. Batasan nomor pada saat kita memasukkan angka pada Edittext menjadi urgent pada saat menerapkan aplikasi kita dalam aplikasi yang berhubungan dengan nominal uang. Misalnya saat kita memasukkan angka 1000, jika angka yang tertampil 1000 maka akan sangat rentan sekali mengalami kesalahan penginputan. Pengguna bisa dirugikan dari aplikasi yang kita bangun. Tetapi kita harus segera mengganti menjadi 1.000 secara realtime. Bagaimana caranya? Silahkan terapkan skrip yang saya sediakan dibawah.
public class SeparateNumberActivity extends AppCompatActivity {
EditText etNumber;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_separate_number);
etNumber = findViewById(R.id.et_number);
etNumber.addTextChangedListener(onTextChangeListener());
}
private TextWatcher onTextChangeListener() {
return new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
@Override
public void afterTextChanged(Editable s) {
etNumber.removeTextChangedListener(this);
try {
String originalString = s.toString();
Long longval;
if (originalString.contains(",")) {
originalString = originalString.replaceAll(",", "");
}
longval = Long.parseLong(originalString);
DecimalFormat formatter = (DecimalFormat) NumberFormat.getInstance(Locale.US);
formatter.applyPattern("#,###,###,###");
String formattedString = formatter.format(longval);
//setting text after format to EditText
etNumber.setText(formattedString);
etNumber.setSelection(etNumber.getText().length());
} catch (NumberFormatException nfe) {nfe.printStackTrace();}
etNumber.addTextChangedListener(this);
}
};
}
}Dibawah ini video hasil dari skrip diatas
Categories: Source Code
Fran
Keep up-to-date on world events, political developments, and game results. Our expert team provide timely coverage 24/7. United states 2024 olympics
Jewspaway
how to buy priligy in usa norethindrone neurontin tabletas Co founder and former CEO Evan Williams is Twitter s largestshareholder, with 12 percent of the shares, while co founder andchairman Jack Dorsey owns 4
Leave a comment