Я бы выбрал вариант AsyncTask
.Я предполагаю, что, поскольку он у вас уже есть, процесс получения результатов, который происходит при нажатии кнопки, требует времени, поэтому неплохо было бы использовать его в методе doInBackground
метода AsyncTask
.
*.1005 * Затем вы можете вызывать каждый
TextView
метод
setText(...)
в методе
onPostExecute
вашего
AsyncTask
.Или, что более удобно, вы можете обновлять каждое представление по мере получения результата, используя методы
publishProgress(...)
и
onProgressUpdate(...)
(см. Документацию
AsyncTask ) во время фоновых вычислений, вместо того, чтобы ждать, покаконец.
Просто имейте в виду, что вы можете вызывать setText(...)
только из методов onPreExecute
, onProgressUpdate
и onPostExecute
, поскольку (по крайней мере, так кажется из вашего объяснения) представлениябыли созданы в потоке пользовательского интерфейса, поэтому их можно изменять только из того же потока, в котором эти методы выполняются.