جدا کردن ۳ رقم ۳ رقم اعداد
سوال
سلام به برنامه نویسان عزیز انجمن درسمن . میخواستم داخل ادیت تکس بشه اعدادی که کاربر وارد میکنه رو ۳ رقم ۳رقم با “,” جدا کنم هرکاری کردم نشد . لطف کنید کدش رو برام بزارید ممنون.
در حال بررسی
0
انجمن برنامه نویسان اندروید
3 سال
1 پاسخ
390 دیده شده
0
پاسخ ( ۱ )
یه کلس درست کنید به اسم
NumberTextWatcherForThousand
بعد این کد رو کپی کنید توش
package com.example.fazelsbr.myapplication;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;
import java.util.StringTokenizer;
/**
* Created by skb on 12/14/2015.
*/
public class NumberTextWatcherForThousand implements TextWatcher {
EditText editText;
public NumberTextWatcherForThousand(EditText editText) {
this.editText = editText;
}
@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) {
try
{
editText.removeTextChangedListener(this);
String value = editText.getText().toString();
if (value != null && !value.equals(“”))
{
if(value.startsWith(“.”)){
editText.setText(“0.”);
}
if(value.startsWith(“0”) && !value.startsWith(“0.”)){
editText.setText(“”);
}
String str = editText.getText().toString().replaceAll(“,”, “”);
if (!value.equals(“”))
editText.setText(getDecimalFormattedString(str));
editText.setSelection(editText.getText().toString().length());
}
editText.addTextChangedListener(this);
return;
}
catch (Exception ex)
{
ex.printStackTrace();
editText.addTextChangedListener(this);
}
}
public static String getDecimalFormattedString(String value)
{
StringTokenizer lst = new StringTokenizer(value, “.”);
String str1 = value;
String str2 = “”;
if (lst.countTokens() > 1)
{
str1 = lst.nextToken();
str2 = lst.nextToken();
}
String str3 = “”;
int i = 0;
int j = -1 + str1.length();
if (str1.charAt( -1 + str1.length()) == ‘.’)
{
j–;
str3 = “.”;
}
for (int k = j;; k–)
{
if (k 0)
str3 = str3 + “.” + str2;
return str3;
}
if (i == 3)
{
str3 = “,” + str3;
i = 0;
}
str3 = str1.charAt(k) + str3;
i++;
}
}
public static String trimCommaOfString(String string) {
// String returnString;
if(string.contains(“,”)){
return string.replace(“,”,””);}
else {
return string;
}
}
}
حالا کافیه برای ادیت تکستتون
بنویسید
editText.addTextChangedListener(new NumberTextWatcherForThousand(editText));