android – 如何执行位于其父级的片段中的AsyncTask <>?

这看起来比它看起来更难,或者我做错了.我需要更新片段中UI元素的内容.

所以,在Activity中,我像这样启动AsyncTask任务

new MyAsyncTask().execute();

在“普通”活动中,这个异步类是私有的,所以我认为我可以在片段类中公开它,然后能够从FragmentActivity父类调用它.像这样的东西:

MyFragment myFragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.layout.my_fragment);
new myFragment.DoParsingAsyncTask().execute(""); //??? a silly guess

这没用.

有人可以帮忙吗?

PS.我的片段不是<片段> XML中的视图,但我通过ViewPager处理它们.通过ViewPager显示页面没有问题.
PPS.此异步类开始解析远程内容并填充片段中的UI元素.

解决方法

它可能无法解决问题,但在片段中创建一个方法并调用它来创建和启动异步任务.它会更整洁.这是代码.

从Fragment调用这样的方法.

Activity myActivity = getActivity();
if (myActivity instanceof MyActivity) {
     ((MyActivity) myActivity).doAsyncTaskMethod();
}

或者你可以尝试我已经提出的解决方案.

MyFragment myFragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.layout.my_fragment);
myFragment.new DoParsingAsyncTask().execute("");

哪个也有效.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...