0

当屏幕上弹出警报/确认框并且我按下设备的后退按钮时,弹出的警报/确认框正在关闭(不触发任何事件)。我怎样才能避免这种情况?

下面是调用代码:

**var buttons = [
                {
                    text : Messages.LBL_OK,
                    handler : doLogout
                }
              ];
showSuccess(Messages.ALERT_FILING_CONFIRMATION,buttons);**


function showSuccess(text,buttons){
    showDialog(Messages.LBL_CMN_DOALOG_SUCCESS_TITLE, text, buttons);
}

function showDialog(title,text,buttons){
    if(title == null || title == undefined){
        title = Messages.LBL_CMN_DOALOG_TITLE;
    }
    if(buttons == null || buttons == undefined){
        buttons = [
                       {
                        text : Messages.LBL_OK,
                        handler : defaultOK
                       }
                  ];
    }
    WL.SimpleDialog.show(title,text,buttons);
}
4

1 回答 1

0

这是 Android 中的预期行为。

但是,如果您想避免这种默认行为,您可以在代码中的关键位置使用WL.App.overrideBackButton API,以便按钮“什么也不做”。完成后,您可以使用WL.App.resetBackButton将后退按钮的行为重置为其默认状态。

例如:

WL.App.overrideBackButton(callback);

function callback(){
 // doing nothing...
}

您可以在调用之前使用上述WL.SimpleDialog.show()内容并在对话框的按钮回调中将其关闭。

于 2014-09-04T14:02:25.327 回答