简体   繁体   English

从字符串中提取子字符串以输入微调器

[英]Extract substring from a string for spinner entry

I need to extract part of the string and display it in the spinner 我需要提取字符串的一部分并将其显示在微调器中

I need that when the spinner display data example For array entries like the following 当微调器显示数据示例时,需要使用以下数组条目

"Equipo-001"
"Equipo-002"

Should show only: 应该只显示:

"001"
"002"

Here's my code 这是我的代码

private void rellenarSpinnerConFoliosDeMaquinasDelPunto(List<String> folios) {

maquinas = dbOn.getMaquinasDePunto(idPunto);
for (int i = 0; i < maquinas.size(); i++) {
    foliosDeMaquinas.add(maquinas.get(i).getcFolioMaquina());

}

adaptadorFoliosMaquina = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, folios);
adaptadorFoliosMaquina.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spn_folioMaquina.setAdapter(adaptadorFoliosMaquina);

spn_folioMaquina.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
ArrayList<String> numberFolios = new ArrayList<>();
for(int j =0; j < folios.size(); j++){
  numberFolios.add(folios.get(j).substring(8, 10)); 
}
adaptadorFoliosMaquina = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, numberFolios);

Check link for better reference on how to use substring. 检查链接以获取有关如何使用子字符串的更好参考。

You can use SPLIT function 您可以使用SPLIT功能

ArrayList<String> data = new ArrayList();
foreach(String get:folios){
     data.add(folios.split("-")[1]); 
}

adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, data);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);

If your result will be dynamic(The string length would vary in future) the below solution may work, 如果您的结果是动态的(字符串长度将来可能会有所不同),则以下解决方案可能有效,

private void rellenarSpinnerConFoliosDeMaquinasDelPunto(List<String> folios) {
    try{
        maquinas = dbOn.getMaquinasDePunto(idPunto);
        for (int i = 0; i < maquinas.size(); i++) {
            foliosDeMaquinas.add(maquinas.get(i).getcFolioMaquina().toString().split("-")[1]);
        }
    } catch(ArrayIndexOutOfBoundsException e){
          e.printStackTrace();
    }
adaptadorFoliosMaquina = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, folios);
adaptadorFoliosMaquina.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spn_folioMaquina.setAdapter(adaptadorFoliosMaquina);

spn_folioMaquina.setOnItemSelectedListener(new  AdapterView.OnItemSelectedListener() {

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM