Android 以编程方式在ListFragment中添加和删除项

Android 以编程方式在ListFragment中添加和删除项,android,android-listfragment,master-detail,Android,Android Listfragment,Master Detail,我正在使用Android Studio主/详细模板,我希望能够通过主活动中的按钮从主列表中添加和删除项目。如果我使用onListItemClick方法,我可以从xxxListFragment类中执行此操作。但是如果我试图在xxxListFragment类中创建一个单独的“public void onClickxxxbutton”方法,那么我的主活动中的按钮就看不到片段中的回调 将onClick处理程序放在主活动(xxxListActivity)的java文件中没有任何作用(没有崩溃,但没有可见的

我正在使用Android Studio主/详细模板,我希望能够通过主活动中的按钮从主列表中添加和删除项目。如果我使用onListItemClick方法,我可以从xxxListFragment类中执行此操作。但是如果我试图在xxxListFragment类中创建一个单独的“public void onClickxxxbutton”方法,那么我的主活动中的按钮就看不到片段中的回调

将onClick处理程序放在主活动(xxxListActivity)的java文件中没有任何作用(没有崩溃,但没有可见的UI更改)

我应该如何添加(和删除)项目


如果这是一个愚蠢的问题,我很抱歉(看起来这应该是一个直截了当的问题),但我已经搜索了好几天,找不到答案。

如果您正在使用代码中的任何适配器查看患者列表,您应该调用“adapter.notifyDataSetChanged()”要更新列表

基本上,这类clickevent将在片段中调用,它将尝试调用片段的活动。因此,您最好将新的listner分配给该控件程序。唯一的适配器是在ListFragment类文件
setListAdapter的onCreate方法中动态创建的适配器(新的ArrayAdapter(getActivity(),android.R.layout.select_dialog_singlechoice,android.id.text1,PatientList.ITEMS))是否有方法获取对此适配器的引用?请尝试此((ArrayAdapter)getListAdapter())。notifyDataSetChanged();这不起作用,因为我的回调在我的主活动类中,而不是ListFragmant类中。我得到一个错误,getListAdapter无法识别。
public void onClickNewPatient(View view){
PatientList.ITEMS.add(new Patient("2", "B12", "Nosebleed", 12, "F"));
}