我在Cordova上使用Angular 4,所以我需要在Android中禁用手机后退按钮。任何人都可以分享如何禁用它?
答案 0 :(得分:2)
你可以创建按钮事件,什么都不做,所以它不会倒退:
declare var device;
...
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(device);
if(device.platform == 'android' || device.platform == 'Android'){
document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown(){
console.log("Does nothing");
}
}
Pd:您需要安装插件cordova-plugin-device
答案 1 :(得分:1)
一种简单的方法是推送初始虚拟历史记录条目,然后覆盖窗口的onpopstate事件,以便始终再次推送虚拟条目。这样,当用户按下后退按钮时,您的应用基本上什么都不做。
// If using TypeScript:
declare var window:any;
// In your App Boot function (for example app.component constructor):
window.history.pushState("BackLock", null, "");
window.onpopstate = (evt) => {
// evt.preventDefault(); might work as an alternative
window.history.pushState("BackLock", null, "");
return;
}