我正在片段活动中创建一个tabhost。我创建了一个片段,当选择了tab时,它会动态加载每个选项卡的内容。我正在使用asynctask来加载tab的内容。当我在选中选项卡时加载选项卡的内容时,我创建了单个片段作为选项卡的内容。我的标签也是动态创建的。
我的问题是,当我第一次选择任何标签时,通过执行asynctask来加载内容,但是当我选择之前选择的标签时,内容不会改变,而是选择了初始标签的内容第一次显示。
这是片段中的onCreateView方法,当选择选项卡时加载内容:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_games, container, false);
return rootView;
}
这是onActivityCreated方法,我调用asynctask
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
new FetchMenuTask().execute();
}
重新选择标签时,如何更改内容
答案 0 :(得分:-1)
您应该将asyntask方法放在onCreateView()中。 然后每次选择片段(添加/替换),你的asynctask将在onCreateView()中被调用,然后你可以在onPostExecute()上用新数据更新视图。