我想在编辑文本中输入一个输入类型,我可以像这样输入小数:2/4(我想打印“/”)。该程序是关于计算事物的,我需要输入小数的小数。谢谢。对不起我的英语不好。
问问题
969 次
2 回答
0
我认为最好的方法是使用字符串作为输入文本,然后解析字符串以找出用户输入的内容类型。
当用户完成输入后,您可以使用以下内容检查字符串:
public float testInputString(String testString) {
boolean goodInput = true;
float result = 0;
if (testString.contains("/")) {
//possible division
String pieces[] = testString.split("/");
if (pieces.length != 2) {
goodInput = false;
} else {
try {
float numerator = Float.parseFloat(pieces[0]);
float denominator = Float.parseFloat(pieces[1]);
result = numerator/denominator;
} catch (Exception e) {
goodInput = false;
}
}
} else if (testString.contains(".")) {
try {
result = Float.parseFloat(testString);
} catch (Exception e) {
goodInput = false;
}
}
//TODO something here if bad input, maybe an alert or something
return result;
}
此外,如果您使用这样的按键侦听器,您可以在他们输入时检查有效输入。您可以将其修改为仅允许 numbers 。和 /。
于 2013-06-11T06:05:14.070 回答
-1
将此属性放在 Edittext 的 xml 节点中,并使用双符号而不是“/”
android:digits="1234567890.-"
于 2015-04-26T13:29:22.777 回答