这与我之前提出的问题有关:Open a DialogFragment from within a CustomView
我现在需要使用回调来从DialogFragment返回一个值。我知道这样的事情通常都是这样做的:
public class MyDialogFragment extends DialogFragment {
public interface onMultipleSelectionFragmentCloseListener {
public void onMultipleSelectionFragmentOkay();
}
onMultipleSelectionFragmentCloseListener mListener;
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
try {
mListener = (onMultipleSelectionFragmentCloseListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString() + " must implement onMultipleSelectionFragmentCloseListener");
}
}
....
// to use it
mListener.onMultipleSelectionFragmentOkay();
当您希望Activity实现并接收回调时就是这种情况。但是,如果我想要一个自定义视图来执行该操作(例如在我之前的问题中),该怎么办?
答案 0 :(得分:-1)
你做同样的事情 - 你创建一个像上面这样的界面。您保留对该接口类型的变量的引用。然后你有一些函数registerListener,它接受一个监听器对象并存储它,以便你以后可以调用它。