我从片段中调用asyncTask来进行网络连接。当它正在运行时,我需要能够禁用片段中的按钮,直到AsyncTask调用onPostExecute。
我唯一的问题是我无法从doInBackground访问这样的按钮:
λ php artisan route:cach
Route cache cleared!
In Route.php line 880:
Unable to prepare route [api/user] for serialization. Uses Closure.
它出现了:
Button mButtom = mActivity.findViewById(R.id.testButton);
答案 0 :(得分:2)
我们的函数名为runOnUIThread
@Override protected String doInBackground(String... strings) {
activity.runOnUiThread(new Runnable() {
@Override public void run() {
//do your action
}
});
return "";
}
答案 1 :(得分:0)
要与Break at first line in PHP scripts option
的用户界面进行互动,请覆盖AsyncTask
,onPreExecute
和onPostExecute
中的一个或多个。只要您在onProgressUpdate
中拨打publishProgress
,就会调用后者。