gpt4 book ai didi

javascript - 使用 Ionic( Angular )。无法访问显示屏/屏幕内有按钮的移动设备的硬件后退按钮

转载 作者:行者123 更新时间:2023-12-01 00:18:07 25 4
gpt4 key购买 nike

当我尝试访问硬件后退按钮以便我可以在应用程序关闭之前向用户发出警报消息时,我遇到了问题。最初我无法做到这一点,所以我提出了一个关于堆栈溢出的问题(link of the question),在答案的帮助下我几乎解决了我的问题,直到我在某些特定设备上观察到我无法访问后退按钮。注意到那些显示屏内有后退按钮的设备(我认为我们可以将这种类型的按钮称为软后退按钮),在这些设备中我无法生成警报框,更准确地说,无法访问后退按钮。但是如果我触摸屏幕然后按下按钮,它就工作正常。基本上,如果有人刚刚启动应用程序并按后退按钮,应用程序就会退出。

我很难正确地撰写和制作我的问题,因此我分享了一个视频链接,请观看并尝试理解并要求任何澄清

Link-1,The type of devices on which alert is not working

Link-2 On this type devices working fine

最佳答案

当您在另一个屏幕上使用应用程序时,按后退按钮即可返回后屏幕。当您的屏幕处于主屏幕或登录状态时,并且在两秒内按两次后退按钮应用程序将关闭。

public astTimeBackPress = 0;
public timePeriodToExit = 2000;

constructor(
public toastController: ToastController,
private platform: Platform,
private nav: NavController,
private router: Router,
) { }

handleBackButton() {
this.platform.backButton.subscribe(() => {
if (this.loaderOff) {
document.addEventListener(
'backbutton',
() => {},
false);
} else {
if (
this.router.url === '/tabs/home' ||
this.router.url === '/signin'
) {
if (new Date().getTime() - this.lastTimeBackPress < this.timePeriodToExit) {
navigator['app'].exitApp();
} else {
this.presentToast('Press again to exit');
this.lastTimeBackPress = new Date().getTime();
}
} else {
this.nav.back();
}
}
});
}

async presentToast(msg, color = 'dark') {
const toast = await this.toastController.create({
color,
message: msg,
duration: 3000,
showCloseButton: true,
closeButtonText: 'Close',
});
toast.present();
}

关于javascript - 使用 Ionic( Angular )。无法访问显示屏/屏幕内有按钮的移动设备的硬件后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59623019/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com