更改选项卡缓慢/滞后 - 使用片段

Mat*_*t M 7 performance tabs android switching android-fragments

我有一个使用标签的活动,标签切换片段.问题是Fragment在创建时需要几秒钟才能加载,因此切换标签会有大约1或2秒的延迟.为了解决这个问题,我一直试图找到一种方法来显示一个简单的加载图形甚至是一个进度对话框,这样标签就会立即改变并显示一些东西,表明在一切都完成之前就会加载.

onCreateView的片段方法如下所示:

FrameLayout fl;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    fl = (FrameLayout) inflater.inflate(R.layout.text_layout, container, false);

    doHeavyStuff();

    return fl;
 }
Run Code Online (Sandbox Code Playgroud)

我试过投入doHeavyStuff(),onStart()但这没有任何帮助.并且线程无法帮助,因为doHeavyStuff()涉及操纵视图/ GUI.

有关如何显示片段并其他所有内容加载显示"正在加载"信息的任何想法?

谢谢!

马特.

500*_*865 8

onActivityCreated():

  • 启动progress bar(或显示UI元素的任何进度).
  • 执行HeavyStuffDoingAsyncTask以下说明.

HeavyStuffDoingAsyncTask应具有:

  • doHeayStuff()在该方法中不更新ui的逻辑doInBackground.
  • 打电话publishProgress()doInBackground()每次你要更新的用户界面.
  • onProgressUpdate方法中实现UI更新逻辑.
  • 停止方法中的进度条onPostExecute.

祝好运.