这是我想要解决的方案。我有一个包含一些要提交给服务器的数据的布局,这个Activity
布局需要上传使用RecyclerView.Adapter
列出的多个文件(附件)。在我的布局底部列出的每个附件中都有一个进度条,显示已上载到服务器的状态或文件的百分比。单击提交按钮,它调用AsyncTask
,并在onPostExecute
布局的Activity
方法中,我想上传我的附件。
克服这个问题的最佳方法是什么?请帮忙。
如果您的异步任务是活动或片段的内部类,您只需从onPostExecute中调用位于活动或片段中的方法即可
class MyActivity extends Activity
{
public void showOrHideProgress(Result result)
{
// your code here
}
class MyAsyncTask extends AsyncTask
{
private final WeakReference><View> progressBarReference;
public MyAsyncTask(@NonNull View progress)
{
this.progressBarReference = new WeakReference<>(progress);
}
@Override
protected void onPostExecute(Result result)
{
super.onPostExecute(result);
showOrHideProgress(result); // or do something with progressBarReference
}
}
}