实际上我正在设计一个Android应用程序,我将使用EditText
将数组作为输入。所以事情是我在尝试很多我没有得到如何做到这一点。任何人都可以帮助我。
我没有正确的代码,所以我没有附上,但请帮助我使用您的代码。
如何在android中使用EditText
将输入作为数组。
我想通过EditText
插入n个元素,而不是想在单个数组中转换它们。
就像我输入输入1和2以及3和4.而不是像a[4] = {1,2,3,4}
答案 0 :(得分:0)
您可以使用以下代码将String转换为数组:
EditText ed = (EditText) findViewById(R.id.edittext);
String text = ed.getText().toString();
int arr[] = new int[text.length()/2];//Assuming no spaces and user is using one comma between numbers
int i=0;
while(text!=null && text.length()>0) {
arr[i] = Integer.parseInt(text.substring(0,1));
text = text.substring(text.indexOf(",")+1);
i++;
}
答案 1 :(得分:0)
您可以输入输入并使用字符作为分隔符。
以下是使用","
作为分隔符的示例。
EditText eText = (EditText) findViewById(R.id.edittext);
String input = eText.getText().toString();
//split your input using ","
String[] valuesArray = input.split(",");
// now you got a String[] with your values to work with.
//If you had input 1,2,3,4 your array is like : {"1","2","3","4"}
答案 2 :(得分:0)
也许你可以有一个文本字段,一次一个元素,直到用户点击停止。 所以你会有一个文本字段和2个按钮 一个按钮只会向数组添加一个元素(比如添加到数组按钮),另一个元素将用于表示用户已完成输入所有元素。
因此用户将输入一个元素,单击“添加到数组”按钮,然后清除该字段,以便用户可以输入下一个元素。并且他可以继续这样做,直到他点击"完成"按钮。
在后端而不是数组中,您可以拥有一个ArrayList,这样您就可以在每次单击“添加到数组”按钮时继续调用list.add(element)。
List<String> list = new ArrayList<String>;
onAddToArrayButtonClick(View v){
list.add(editText.getText().toString();
editText.getText().clear(); //this clears the edit text
}
如果你想一次性获取数组的输入,你可以使用&#34;,&#34;作为一个分隔符,然后调用string.split(&#34;,&#34;);
类似的东西:
onAddToArrayButtonClick(View v){
String[] array = editText.getText().toString().trim().split(","); /*for a user input of 1,2,3,4 split will return a string array = {"1","2","3","4"} */
}