我有个活动
public class ShowFileActivity extends FragmentActivity
当occours发生某个事件时,这个类调用一个dialogfragment
public class ConfirmDialog extends DialogFragment
这是一个简单的确认对话框(带有“关闭”和“确定”按钮)。
如果用户按下关闭按钮,我将调用
dismiss()
回到ShowFileActivity。
否则,如果用户按“确定”,在执行某些操作后,在对话框上取消调用后,我将返回ShowFileActivity的父活动。
有办法吗?DialogFragment是否向其父视图启动任何事件?
最佳答案
您可以做的是从片段内部调用包含活动的方法。
根据任何其他片段,您可以调用getActivity()来返回包含的活动。
@Override
public void onDismiss(DialogInterface dialog) {
ShowFileActivity parent = (ShowFileActivity) getActivity();
parent.doWhateverYouWantWhenDialogDismissed();
}
另一种(更奇特的)方法是使用事件总线,如otto或greenrobot。