从 MultiAutoCompleteTextView 中拆分字符串并将其设置为不同的文本视图
To split Strings from a MultiAutoCompleteTextView and set it to different textview
我有一个字符串数组,它是使用逗号标记器从 MultiAutoCompleteTextView 编辑的选项 select 的结果。该字符串如下所示:
"India, China, Japan, America, Australia"
我需要根据昏迷位置分离这些值并将这些值设置为不同的文本视图。此外,我需要将用户限制为 select 只有 5 个值,并且不应重复这些值。
使用这样的东西:
String myListAsString = "India, China, Japan, America, Australia";
String[] countries = myListAsString.split(",");
TextView t1 = (TextView)findViewById(R.id.t1);
TextView t2 = (TextView)findViewById(R.id.t2);
TextView t3 = (TextView)findViewById(R.id.t3);
TextView t4 = (TextView)findViewById(R.id.t4);
TextView t5 = (TextView)findViewById(R.id.t5);
t1.setText(countries[0]);
t2.setText(countries[1]);
t3.setText(countries[2]);
t4.setText(countries[3]);
t5.setText(countries[4]);
你可以这样使用String.split()
:
String[] array = yourString.split(",");
并遍历该数组。
编辑:
要检查用户是否已经选择了该项目,您可以将 OnItemClickListener
添加到 multiAutoCompleteTextView
并在您的项目被点击的位置添加 HashSet
或 Set
存储并检查该项目是否已存在于集合中
示例:
首先初始化您的HashSet
:HashSet<String> hashset = new HashSet<String>();
以后:
youMultiAutoCompleteTv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String itemClicked = parent.getAdapter().getItem(position).toString();
if(hashset.contains(itemClicked)){
Toast.makeText(getApplicationContext(), "Item exists", Toast.LENGTH_SHORT).show();
}
else {
hashset.add(itemClicked);
}
}
});
你可以使用这个:
String input = editText.getText().toString().trim(); //Getting String from view.
String[] singleInputs = input.split("\s*,\s*"); //Splitting in proper way.
我有一个字符串数组,它是使用逗号标记器从 MultiAutoCompleteTextView 编辑的选项 select 的结果。该字符串如下所示: "India, China, Japan, America, Australia"
我需要根据昏迷位置分离这些值并将这些值设置为不同的文本视图。此外,我需要将用户限制为 select 只有 5 个值,并且不应重复这些值。
使用这样的东西:
String myListAsString = "India, China, Japan, America, Australia";
String[] countries = myListAsString.split(",");
TextView t1 = (TextView)findViewById(R.id.t1);
TextView t2 = (TextView)findViewById(R.id.t2);
TextView t3 = (TextView)findViewById(R.id.t3);
TextView t4 = (TextView)findViewById(R.id.t4);
TextView t5 = (TextView)findViewById(R.id.t5);
t1.setText(countries[0]);
t2.setText(countries[1]);
t3.setText(countries[2]);
t4.setText(countries[3]);
t5.setText(countries[4]);
你可以这样使用String.split()
:
String[] array = yourString.split(",");
并遍历该数组。
编辑:
要检查用户是否已经选择了该项目,您可以将 OnItemClickListener
添加到 multiAutoCompleteTextView
并在您的项目被点击的位置添加 HashSet
或 Set
存储并检查该项目是否已存在于集合中
示例:
首先初始化您的HashSet
:HashSet<String> hashset = new HashSet<String>();
以后:
youMultiAutoCompleteTv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String itemClicked = parent.getAdapter().getItem(position).toString();
if(hashset.contains(itemClicked)){
Toast.makeText(getApplicationContext(), "Item exists", Toast.LENGTH_SHORT).show();
}
else {
hashset.add(itemClicked);
}
}
});
你可以使用这个:
String input = editText.getText().toString().trim(); //Getting String from view.
String[] singleInputs = input.split("\s*,\s*"); //Splitting in proper way.