获取错误 - 必须从UI线程调用方法getText,当前推断的线程是worker

时间:2017-02-23 07:36:43

标签: java android multithreading

在下面的一行中,它给出了错误说明:

  

必须从UI线程调用方法getText,当前推断的线程是worker“。

如何解决该错误?

15

粗体部分告诉我有错误。关于如何解决这个问题的任何想法?

Screen shot of the error

2 个答案:

答案 0 :(得分:0)

试试这个:

String wordsToTranslate = translateEditText.getText()。toString();

new Translate()。execute(wordsToTranslate);

class Translate extends AsyncTask<String, String, String> {

    @Override
    protected String doInBackground(String... args) {
            // Building Parameters
            String wordsToTranslate = args[0];


            //do your work

    }

}

答案 1 :(得分:0)

每个应用程序都有自己的特殊线程来运行UI对象,您只能从该线程访问UI对象。

你应该查看android开发者网站关于与UI线程的通信:

https://developer.android.com/training/multiple-threads/communicate-ui.html