2017-09-04 2 views
0

das Problem ist einfach Ich möchte eine (Meldung) Toast zu Beginn eines Verfahrenszeigen einen Toast zu Beginn eines Verfahrens

private void PartitionShow() {Toast.makeText (getApplicationContext(), "wait processing ...", Toast.LENGTH_LONG) .show();// the code of my method// ...} 

platziert angezeigt werden nur diese Meldung erscheint nur auf den warten zu machen Ende des Codes meiner Methode

eine Lösung, die funktioniert, ist der Code in einer Klasse zu setzen:

private class DownloadFilesTask extends AsyncTask <String, Integer, String> {} 

und verwalten den Toast in:

protected void onProgressUpdate (Integer ... progress) {} 

für Interessenten finden Sie sample code

nur in meinem Code I-Objekte erstellen und es wird schwer und langsam in einem anderen unabhängigen Thread zu platzieren

dank denen, die mir ein viel finden werden einfacher Lösung?

+3

Was bedeutet "warten"? – CommonsWare

+1

Warum verwenden Sie keine Fortschrittsanzeige? – joao86

Antwort

0

Soweit ich verstehe.

private void PartitionShow() {Toast.makeText (getApplicationContext(), "wait processing ...", Toast.LENGTH_LONG) .show();// the code of my method// ...} 
//// the code of my method// 

wird einige schwere Aufgabe tun, um eine Datei oder Bulk-Datenspeicher oder einige schwere Haupt-Thread-Operationen wie das Schreiben. Sie könnten also auf einen Fehler stoßen. Sie können zwei Dinge tun Einführung neue AsyncTask oder Verwenden Sie Handler für Threading-Operationen.

+0

ja, ich thx thx –

Verwandte Themen