0

我正在寻找一种从一个 EditText 获取三个浮点值的方法。我查看了开发人员页面,但我找不到最适合我需要的任何内容。我想从一个条目中获取三个浮点 ax、y、z编辑文本?

非常感谢你们对这个问题的回复,我真的很棒。我现在仅限于我的计算机上的时间,但我会让你知道哪个答案对我有用并且我也会发布我的代码。

4

4 回答 4

0

如果它们被空格分隔

Scanner sc = new Scanner(yourEditText.getText().toString());

float vals = new float[3];

while(int i=0; sc.hasNextFloat() && (i < 3); ++i) {
   vals[i] = sc.nextFloat();
}

否则用于Scanner.setDelimiter设置除空格以外的分隔符。

重新考虑您的设计以改用三个 EditText。在手机上输入逗号之类的符号很痛苦

于 2013-06-10T20:55:28.057 回答
0
String value = yourEditText.getText().toString();
String[] floatStrings = value.split(",");
float[] result = new float[floatString.length];
for (int i=0; i<result.length; i++) {
    result[i] = Float.valueOf(floatStrings[i];
}

?

于 2013-06-10T20:56:01.313 回答
0

如果您希望用户输入 3 个单独的值,这些值将被解析为 3 个单独的变量,请使用 3 个 EditText 小部件。

于 2013-06-10T23:00:33.030 回答
-1

您应该创建几个 EditText 视图,或者然后解析 EditText 的内容

EditText textView;

String[] splitFloatStrings = textView.getText().toString();.split(",");
float[] parsedFloats = new float[splitFloatStrings.length];

for (int i=0; i < parsedFloats.length; i++) {
    parsedFloats[i] = Float.valueOf(splitFloatStrings[i];
}

根据Java 将浮点数字符串解析为浮点数数组?

于 2013-06-10T20:57:55.477 回答