从片段运行ui线程上的任务

Hem*_*ori 0 java multithreading android

如何在ui线程上运行任务.我试图在ui线程上运行任务

  MainActivity.this.runOnUiThread(new Runnable() {

                @Override
                public void run() {
                    Toast.makeText(MainActivity.this, 
                        "Mytask finished", 
                        Toast.LENGTH_SHORT).show();
                }
            });
Run Code Online (Sandbox Code Playgroud)

Hem*_*ori 9

我找到了解决方案,在该片段活动UI线程运行的任务只是改变MainActivity.this到getActivity(),将修复错误.我认为这可能会有所帮助.

Thread timer = new Thread() {
                @Override
                public void run() {
//do something
     getActivity().runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            Toast.makeText(getActivity(),
                            "Token Generated", Toast.LENGTH_SHORT).show();
                        }
                    });
       }
            };
            timer.start();
Run Code Online (Sandbox Code Playgroud)