我创建了一个非常简单的侦听器界面,如下所示:
public interface ReportDialogListener {
void shouldRemoveBlockedUser();
}
现在,在我的ReportDialog类中定义如下:
public class ReportDialog extends Dialog implements View.OnClickListener {}
我想实现此侦听器并为特定操作发送回调。但是,当我在某个动作后发送回调时......我的mDialogListener变量为空。
我在哪里设置上下文?
这就是我的尝试:
private ReportDialogListener mDialogListener;
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
try {
mDialogListener = (ReportDialogListener) getContext();
} catch (ClassCastException e) {
}
}
@Override
public void onDetachedFromWindow() {
super.onDetachedFromWindow();
mDialogListener = null;
}
但是当我致电mDialogListener.shouldRemoveBlockedUser();
时,mDialogListener
为空......
另外 - 我确保我的主要活动是实施ReportDialogListener ...谢谢