2016-07-01 11 views
2

Ich habe eine for-Schleife und ich mache ein paar Such-Sachen drin. Ich möchte eine Toast-Nachricht anzeigen, wenn der Prozess nicht erfolgreich ist. Ich kann Toast-Nachricht anzeigen, aber es verschwindet nicht, wenn ich erneut suchen möchte.Toast-Nachricht verschwindet nicht

public String SearchInstallationBySerialNumber(String serial){ 
    String installation = null; 
    for(int i = 0; i < _allItems.size(); i++){ 
     OsbDownloadItem currentOsbItem = _allItems.get(i); 
     if(!currentOsbItem.getSerialNumber().equals(serial)){ 
      Toast.makeText(mActivity, 
          "unsuccessful searching", 
          Toast.LENGTH_SHORT).show(); 
      continue; 
     }else{ 
      installation = currentOsbItem.getInstallation(); 
     } 
    } 
    return installation; 
} 
+0

Sie könnten diesen 'Toast.makeText' erneut in der Schleife aufrufen? 'continue' springt zur nächsten Iteration oder? –

+0

Vielleicht sollten Sie den Toast speichern und toast.cancel() aufrufen, wenn Sie einen alten Toast ausblenden möchten. – flob

+0

ich kann nicht anrufen Toast.cancel() – Nagikho

Antwort

1

Entfernen von Toast aus For-Schleife könnte helfen!

public String SearchInstallationBySerialNumber(String serial) { 

    String installation = null; 
    for (int i = 0; i < _allItems.size(); i++) { 

     OsbDownloadItem currentOsbItem = _allItems.get(i); 
     if (currentOsbItem.getSerialNumber().equals(serial)) { 

      installation = currentOsbItem.getInstallation(); 
      break; 
     } 

    } 
    if (installation == null) { 
     Toast.makeText(mActivity, "unsuccessful searching", Toast.LENGTH_SHORT).show(); 
    } 
    return installation; 
} 
+0

Es funktioniert:) Vielen Dank !!! – Nagikho