2012-03-23 2 views
0

Я разрабатываю действие, у которого есть кнопка «Обновить» в качестве меню для Android. Я хочу показать диалог. Я сделал это через showDialog() Операции обновления контролируются функцией update_rates() Обновление включает загрузку файла из Интернета и обновление значений базы данных Но когда я нажимаю кнопку меню, она запускает загрузку файла и обновляет базу данных. , если я прокомментирую функцию update_rates, он показывает диалог, но с update_rates он не отображает диалог Как я могу решить эту проблему?Активность Останавливает ответ на обработку данных

https://github.com/sreevisakh/android/blob/master/src/com/sv/cc/main.java

+0

Там нет никакого способа, мы можем помочь вам, не видя код – dymmeh

+0

https://github.com/sreevisakh/android/blob/master/src/com/sv/cc/ main.java line: 183 – Sreevisakh

ответ

0

никогда ли не показывать диалог? Или это только показывает диалог, как только он будет обработан?

Для меня это звучит как ваш update_rates() метод является:

  • делает это работа на потоке пользовательского интерфейса и, следовательно, блокируют любые последующие операции (в том числе таких вещей, как отображаются диалоговые окна) до его завершения (так вы увидите диалог после этого, в зависимости от порядка кода).
  • не работает в потоке пользовательского интерфейса, но пытается выполнить действия пользовательского интерфейса; который Android не позволяет.

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

Эта статья содержит больше информации: http://developer.android.com/resources/articles/painless-threading.html

+0

Я новичок в android. Я пытаюсь разработать приложение конвертера валют для его изучения. Я понятия не имею о потоках пользовательского интерфейса и Non UI. Но можно угадывать что-то из его имен. Я делаю всю обработку в основном классе активности, это неправильно? Как я могу сделать это в anothe thread? Вот мой код https://github.com/sreevisakh/android/blob/master/src/com/sv/cc/main.java – Sreevisakh

Смежные вопросы