Android Studio - 必须从 UI 线程调用 bringToFront

Android Studio - bringToFront must be called from the UI thread

自从我将我的 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() 方法。

错误:必须从 UI 线程调用方法 bringToFront,当前推断线程是工作线程...

无论如何,该项目正在编译,但我很想知道我的错误在哪里。

提前致谢。 C.

通常你不应该在doInBackground中执行UI相关代码,你应该将UI相关代码移动到AsyncTask的onPostExecute或onProgressUpdate方法中。

不过,有很多方法可以做到。这个答案可能对您有帮助:

Android : Calling the methods on UI thread from AsyncTask doInBackground method