Android Studio - метод BringToFront должен вызываться из потока пользовательского интерфейса.

так как я импортировал свой проект Eclipse в Android Studio, у меня возникла ошибка, связанная с методом BringToFront().

protected Void doInBackground(String... num_t) {

        planningTitle = (TextView) findViewById(R.id.planningTitle);

        planningTitle.bringToFront(); /* Bring Planning Title in front of Table Layout */

        /* Plubish the result to update Layout */
        publishProgress(num_t[0]);

        return null;
    }

Я видел несколько похожих вопросов, касающихся метода getText(), и понял их, но не могу понять, что делать с этим методом BringToFront().

Ошибка: метод BringToFront должен вызываться из потока пользовательского интерфейса, в настоящее время предполагаемый поток является рабочим...

Проект все равно компилируется, но мне любопытно узнать, где моя ошибка.

Заранее спасибо. С.


person Cedric    schedule 10.10.2015    source источник


Ответы (1)


Как правило, вы не должны выполнять код, связанный с пользовательским интерфейсом, в doInBackground, вы должны переместить код, связанный с пользовательским интерфейсом, в методы onPostExecute или onProgressUpdate вашей AsyncTask.

Однако есть способы сделать это. Этот ответ может помочь вам:

Android: вызов методов в потоке пользовательского интерфейса из AsyncTask метод doInBackground

person Udi Idan    schedule 10.10.2015
comment
@UdiI: Спасибо. Я должен был это знать, извините! - person Cedric; 10.10.2015