Android fragments 让片段等待异步任务完成?
我在viewPager中使用片段。其中一个片段使用asynctask下载数据。现在的问题是任务还没有完成,但是片段的onCreateView已经返回。 我可以在任务完成时更新片段吗?我试图调用view.invalidate()无效Android fragments 让片段等待异步任务完成?,android-fragments,android-asynctask,android-viewpager,Android Fragments,Android Asynctask,Android Viewpager,我在viewPager中使用片段。其中一个片段使用asynctask下载数据。现在的问题是任务还没有完成,但是片段的onCreateView已经返回。 我可以在任务完成时更新片段吗?我试图调用view.invalidate()无效 public class LineChartFragment extends Fragment { View view; @Override public View onCreateView(LayoutInflater inflater
public class LineChartFragment extends Fragment {
View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
new Background().execute();
return view;
}
}
class Background extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
// TODO Auto-generated method stub
super.onPreExecute();
}
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
if (haveInternet()) {
getter();
}
return null;
}
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
//UPDATE fragment
....
view = ChartFactory.getLineChartView(getActivity().getApplicationContext(), dataset, renderer);
....
view.invalidate();
}
公共类LineChartFragment扩展了片段{
视图;
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//TODO自动生成的方法存根
新建背景().execute();
返回视图;
}
}
类后台扩展异步任务{
@凌驾
受保护的void onPreExecute(){
//TODO自动生成的方法存根
super.onPreExecute();
}
@凌驾
受保护的Void doInBackground(Void…参数){
//TODO自动生成的方法存根
if(haveInternet()){
getter();
}
返回null;
}
受保护的void onPostExecute(void结果){
//TODO自动生成的方法存根
super.onPostExecute(结果);
//更新片段
....
view=ChartFactory.getLineChartView(getActivity().getApplicationContext(),数据集,渲染器);
....
view.invalidate();
}
我找到了这个
为线性布局充气并将图表视图添加到布局中。谢谢