【发布时间】:2014-12-13 17:46:40
【问题描述】:
我是 android 开发新手,我正在使用 jfeinstein10 的 SlidingMenu 库开发一个应用程序,我在主屏幕上列出了一些评价最高的数据... 现在我通过从 SQLite 获取数据并在片段活动中放入 ListView 来做到这一点
首页片段
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.home_fragment, container, false);
new ManageSQLiteResponse((ListView)rootView.findViewById(R.id.lv_top_rate)).execute();
return rootView;
}
ManagerSQLiteResponse 调用:
public void updateList(ListView listView){
DietsListAdapter adapter = new DietsListAdapter(getActivity(), R.layout.single_top_rate, dietList);
listView.setAdapter(adapter);
}
而且每次我通过在 SlidingMenu 上选择来切换片段时,所有的 ListView 都会再次填充,这会导致一些延迟,并且菜单不会顺利打开或关闭...
那么,有什么方法可以运行 AsyncTask.execute() 并只填充一次 ListView,而不是每次创建片段时?通过这个我认为它会停止落后于 SlidingMenu
TVM
【问题讨论】:
-
尝试将片段存储在 backstack 中。
-
你能解释一下我是怎么做到的吗?我对这一切都很陌生
标签: android listview fragment slidingmenu