从字符串中提取子字符串以进行微调器条目

时间:2016-10-09 21:38:15

标签: android split

我需要提取部分字符串并将其显示在微调器中

当微调器显示数据示例时,我需要它 对于像以下

这样的数组条目
"Equipo-001"
"Equipo-002"

应该只显示:

"001"
"002"

这是我的代码

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() {

3 个答案:

答案 0 :(得分:0)

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);

检查link以获得有关如何使用子字符串的更好参考。

答案 1 :(得分:0)

您可以使用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);

答案 2 :(得分:0)

如果您的结果是动态的(字符串长度将来会有所不同),则以下解决方案可能有效,

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() {