Android 更改方向时未重新创建对话框

Android 更改方向时未重新创建对话框,android,dialog,orientation,Android,Dialog,Orientation,调用时使用: showDialogDIALOG\u LONG\u单击菜单\u ID 方向更改时泄漏窗口没有问题,但是当重新创建活动时,不会调用onCreateDialog或onPrepareDialog 不知道这是否有什么不同,但活动在一个选项卡内 任何对可能原因的洞察都将受到高度赞赏 @Override protected Dialog onCreateDialog(int id) { Dialog dialog; CURRENT_DIALOG = id; switch

调用时使用:

showDialogDIALOG\u LONG\u单击菜单\u ID

方向更改时泄漏窗口没有问题,但是当重新创建活动时,不会调用onCreateDialog或onPrepareDialog

不知道这是否有什么不同,但活动在一个选项卡内

任何对可能原因的洞察都将受到高度赞赏

@Override
protected Dialog onCreateDialog(int id) {
    Dialog dialog;
    CURRENT_DIALOG = id;
    switch(id) {
        case DIALOG_LONG_CLICK_MENU_ID:
            dialog = displayItemLongClickMenu();
            break;
        default:
            CURRENT_DIALOG = DIALOG_NONE_ID; 
            dialog = null;
            break;
        }
    return dialog;
}    


private Dialog displayItemLongClickMenu() {
    AlertDialog alertDialog;
    AlertDialog.Builder builder;
    builder = new AlertDialog.Builder(this);
    builder.setTitle(R.string.activity_item_dialog_title);
    // save index and top position          
    mIndex = getListView().getFirstVisiblePosition();
    View vLC = getListView().getChildAt(0);
    mTop = (vLC == null) ? 0 : vLC.getTop();        

    builder.setItems(new String[]{ getString(R.string.delete)},
                     new DialogInterface.OnClickListener() {

        public void onClick(DialogInterface dialog, int which) {
            final PomodoroApp pA = ((PomodoroApp)getApplicationContext());              
            switch (which){
            case DELETE_ID: 
                mDbHelper.deleteActivity(mItemListDialogId);
                refactorToDoList();
                dialog.dismiss();
                break;
            default:
                break;
            }
        }
    });
    alertDialog = builder.create();
    alertDialog.setCancelable(true);
    return(alertDialog);
}