构造函数(注释ListPickerHandler)
public StarredListPickerDialogFragment(ListPickerHandler h) {
handler = h;
mSelectedItems = new ArrayList<StarredList>();
}
这就是我如何调用父片段方法(定义实现ListPickerHandler接口)
alertDialog.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
Button negative = alertDialog.getButton(AlertDialog.BUTTON_NEGATIVE);
Button positive = alertDialog.getButton(AlertDialog.BUTTON_POSITIVE);
positive.setEnabled(false);
negative.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
handler.onNegativeButtonAction(mSelectedItems);
}
});
positive.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
handler.onPositiveButtonAction(mSelectedItems);
}
});
}
});
当android os调用onSaveInstanceState()时,麻烦来了。处理程序没有更多的定义,我实际上没有处理这种情况的线索..
答案 0 :(得分:0)
通过强制转换(当bundle不为null时)将父片段解析为ListPickerHandler,它是由调用片段实现的接口