我有一个片段中运行的两个异步任务,我们称之为F1。
该片段在可见时需要4/5秒来加载数据(我在那里放置了一个进度条)
我想要实现的是:
在我打开应用程序(加载另一个片段)后立即在片段中运行那些异步任务,这样,当我打开特定片段(F1)并保留数据时,不必显示进度条直到(i)单击刷新按钮或(ii)应用程序关闭/重新启动。
我试图将异步任务的execute()放在方法中,并尝试从我的主片段中调用该方法。但是我在那里出错了,因为我的post execute方法具有一些附加的视图。
protected void onPostExecute(String s) {
super.onPostExecute(s);
recyclerView.getItemAnimator().setChangeDuration(0);
recyclerView.setNestedScrollingEnabled(false);
recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), mNoOfColumns));
adapterDod=new AdapterDotd(getActivity(),data);
adapterDod.notifyDataSetChanged();
if(AsyncTaskCount == AsyncTaskRequested) {
lottieAnimationView.setVisibility(View.GONE);
}
recyclerView.invalidate();
recyclerView.setAdapter(adapterDod);
}
答案 0 :(得分:1)
我建议您在fragment
内使用viewpager
,这样可以在不可见的情况下加载fragment
数据