当Fragment 2在onActivityCreated()
中有代码加载数据,创建自定义数组适配器并将其设置在ListView上时,我需要从Fragment 1调用什么来强制更新/刷新Fragment 2? / p>
有没有办法更新/刷新ListView,或者有意Replace()
Fragment强制重建它并重新运行onActivityCreated()
中的代码?
这是剪辑片段2 onActivityCreated()代码:
@Override
public void onActivityCreated(Bundle savedInstanceState)
{
super.onActivityCreated(savedInstanceState);
// Get the prepared data and load it into this view
ArrayList<ReportData> oReportResultsData = Report.LoadData(Home.ScheduleJSonData, Home.SelectedDate);
//Set the list into the gridview (Listview formatted with rows/columns)
ScheduledActivityReportGridArrayAdapter myGridArrayAdapter = new ScheduledActivityReportGridArrayAdapter(this.getActivity(), R.layout.homeschedulerow, oReportResultsData);
lstReport.setAdapter(myGridArrayAdapter);
}
我确实尝试在片段管理器上手动调用notifyDataSetChanged()
,希望这会强制它重新加载/刷新片段2.我已经重新阅读了文档和很多很好的答案,但自定义LoadData()
在onActivityCreated()
中设置的方法和自定义适配器我没有看到解决。
非常感谢!
答案 0 :(得分:2)
您的片段应通过活动相互沟通,请参阅http://developer.android.com/guide/components/fragments.html#CommunicatingWithActivity。
你的第一个片段应该调用活动上的一个方法,然后在第二个片段上调用另一个方法,然后重新加载你的数据。