首页 > 解决方案 > 如何在editText中输入小数?

问题描述

我是android studio的初学者,我想构建一个应用程序,用户可以在editText中以a / b的形式输入数字。该数字稍后将被划分并进一步计算。不能在 Number(editText) 或 decimal(editText) 中以 a/b 形式输入数字。我应该使用什么?

非常感谢你们!最后,我编写了这段代码为我工作:

var fractionString = editText_input.text.toString() //the fraction is taken as a string with '/' in it
var splitFraction = Fraction.split('/')
var numerator = splitFraction[0]
var denominator = splitFraction[1]

标签: androidandroid-studiokotlin

解决方案


那么两个呢EditText:一个用于分子,一个用于分母?

或使用EditText添加TextChangerwith的字符串myEditText.addTextChangedListener(new MyTextChanger())

的代码MyTextChanger如下:

public class MyTextChanger implements 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) {
    int i;
    boolean modified=false;

    for (i = 0; (i < s.length()) && !modified; i++) {
        if (((s.charAt(i) < '0') || (s.charAt(i) > '9')) && (s.charAt(i) != '/')) {
            s.delete(i,i+1);
        }
    }
}

}


推荐阅读