混合app 解决常见bug弹出键盘返回出现闪屏
2023-09-14 08:59:24 时间
前言
在我们开发混合app中,我们会发现一个问题,那就是比如我们正在输入信息的时候,然后我们按导航的返回键返回,因为切页面和回收键盘是同时的,给人一种闪屏的感觉,那么怎么解决呢?
方案
以ionic为例子:
设置一个变量监听当前是否键盘弹出。
showKeyboard: boolean = false;
这时候呢,如果判断键盘为true的话就不返回。
this.getNavBar().backButtonClick = (e) => {
if (that.showKeyboard) {
return false;
} else {
//返回
that.nav.pop();
}
}
在此解释一下合理性,为什么不返回为合理呢?这时候键盘弹出,按理说就应该点击其他地方让它失去焦点,而不是转移焦点。
那么我们需要些键盘监听事件:
window.addEventListener('keyboardWillShow', this.keyboardShowCallback.bind(this));
window.addEventListener('keyboardWillHide', this.keyboardHideCallback.bind(this));
keyboardShowCallback() {
this.showKeyboard = true;
}
keyboardHideCallback() {
var that=this;
setTimeout(()=>{
that.showKeyboard=false;
},500);
}
这样可以达到理想效果。
相关文章
- 战斗bug技巧全攻略
- Working copy not locked; this is probably a bug, please report
- 【原】YUI压缩与CSS media queries下的bug
- 高质量的缺陷分析:让自己少写 bug
- [Angular] Upgrade existing Angular app to Progressive Web App
- bug_ _ _android.app.Fragment$InstantiationException 解决办法
- bug-sqlite3
- BUG! exception in phase semantic analysis in source unit
- vue 的 render 函数的用法:new Vue({ render: h => h(App), }).$mount(‘#app‘)
- iOS app store无法提交以供审核 App隐私
- 成功解决算法模型在预测的时候model.predict(X_test)其预测功能戛然而止且代码无bug的无提示的无法继续向下运行代码而在当前直接退出
- 〖Python APP 自动化测试实战篇⑨〗- 实战 - App自动化实战操作
- 〖Python APP 自动化测试实战篇⑩〗- app自动化总结与展望
- [C++]佛祖保佑,永无bug。C++ BUG解决方案
- Error: 待解决bug
- 有哪个瞬间让你觉得这个世界出bug了?
- QQ翻车微信出bug,程序员该如何应对?
- Git Bug分支
- 【Bug解决】LDA() got an unexpected keyword argument ‘n_components‘