Тост не проявляет себя хорошо в работе перед чтением.txt файла. Android

Нужна помощь!

Я пытаюсь показать сообщение с тостом (msg: please wait...), затем что-то случилось (загрузка загрузки/чтения файла.txt), а затем еще один тост (msg: done!).

Но первый тост не показывает.. или, может быть, слишком quiclky. Загрузка этого.txt файла занимает некоторое время (~ 5 секунд), я хочу сообщить об этом пользователю.

Есть идеи? Я alredy пробовал спать и другие...

Toast.makeText(getApplicationContext(), "Please wait...", Toast.LENGTH_LONG).show();
File sdcard = Environment.getExternalStorageDirectory();
...
...
Toast.makeText(getApplicationContext(), "Done !",Toast.LENGTH_LONG).show();

Заранее спасибо !

Извините за мой английский

2 ответа

вы используете асинхронный доступ к файлу? Если нет, вы никогда не должны долго работать, блокируя операции в основном потоке. он, вероятно, не сможет сделать ваш первый тост до тех пор, пока не будет достигнут доступ к файлу, после чего он должен был исчезнуть. попробуйте доступ в AsyncTask.

Toast.makeText(getApplicationContext(), "Please wait", Toast.LENGTH_LONG).show();

new AsyncTask<void, void,="" void="">() {
 @Override
 protected Void doInBackground() {
 File sdcard = Environment.getExternalStorageDirectory();
 [access/mess around with the file]
 return null;
 }

 @Override
 protected void onPostExecute(Void aVoid) {
 Toast.makeText(getApplicationContext(), "Done",Toast.LENGTH_LONG).show();
 }
}.execute();
</void,>


Поместите процесс загрузки в новую тему, я думаю, что основной процесс заблокирован.

licensed under cc by-sa 3.0 with attribution.