我有两个对话框片段窗口。父对话片段窗口有一个listview,它有一个按钮。该按钮调用子对话框片段窗口。
使用Adapter类
调用子DF holder.Details.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FragmentActivity activity = (FragmentActivity)(context);
FragmentManager fm = activity.getSupportFragmentManager();
CustomerEditDialog alertDialog = new CustomerEditDialog(context);
alertDialog.show(fm, "fragment_alert");
}
});
Child DF用于编辑某些信息并将其上传到服务器。我想知道的是如何在完成编辑并且子DF被解雇后更新父列表视图。
我用过
的onResume
和
的onPause
重置父DF中的适配器。 但这些方法没有正确执行。
答案 0 :(得分:0)
问题解决了。但我不知道这个解决方案是最好的做法。
我将父对话片段列表视图更改为
Public static ListView listView;
然后在子对话框片段中访问它并设置适配器。
CustomListViewAdapter adapter = new CustomListViewAdapter(getActivity(),
R.layout.list_item, rowItemsa);
//Some Code
ParentFragment.listView.setAdapter(adapter);
答案 1 :(得分:0)
片段与activity紧密耦合。因此onResume()和OnPause()将调用activity。相反,你可以遵循:
步骤1:使用1对话框片段代替2.使用2对话框
步骤2:使用onCreateDialog创建父对话框。
步骤3:将listview的适配器作为实例变量。
步骤4:使用listview的OnItemClickListener创建子对话框。
步骤5:使用adapter.notifyDataSetChanged()更新父对话框的列表项。