混合app 解决常见bug弹出键盘返回出现闪屏
前言
在我们开发混合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);
}
这样可以达到理想效果。
混合app 解决常见bug弹出键盘返回出现闪屏的更多相关文章
- mui搜索框在ios平台上点击多次才弹出键盘的解决方法
今天使用Hbuilder调试手机端时,发现搜索框在安卓系统下,点击一次就可以弹出键盘 但是在iso下非常的不规律,要点击多次 代码实现如下: <div class="mui-input ...
- 【小贴士】zepto find元素以及ios弹出键盘可能让你很头疼
前言 在此,我不得不说移动端的兼容问题很多,并且很令人头疼,这不,这个星期又有两个让我逮着了,一个是使用zepto过程中出现的问题,一个是ios虚拟键盘的问题 我这里做一次记录,以免以后忘了,同时希望 ...
- ios兼容 input输入时弹出键盘框 页面整体上移键盘框消失后在ios上页面不能回弹的问题
前端h5混合开发手机端ios 当有input输入时,手机下方弹出键盘使页面上移,当输入完成,键盘消失后页面显示回到原位,但实际不能点击(可点击上方区域,有反应),也就是说实际是没有回弹. 解决办法: ...
- [调整] Firemonkey TEdit 避免按下立即弹出键盘的问题
目前 Firemonkey 有一个问题,就是在 Edit 按下会立即弹出键盘,在红鱼儿的博客也提交了 QC: http://blog.sina.com.cn/s/blog_44fa172f0102vy ...
- IOS开发之自定义系统弹出键盘上方的view(转载)
这篇文章解决的一个开发中的实际问题就是:当弹出键盘时,自定义键盘上方的view.目前就我的经验来看,有两种解决方法.一个就是利用UITextField或者UITextView的inputAccesso ...
- 关于UITextfield弹出键盘解决方案
解决的问题:当你点击一个UITextfield时,不想让其弹出键盘,如果你觉得不就是取消其第一响应者嘛,resignRespond一下不就行了嘛,确实,如果你只是在其编辑完成后让其键盘消失,那这个就够 ...
- fullpage插件在移动端弹出键盘页面特殊处理
fullpage插件大家都很熟悉 jquery一款全屏上下滑动的插件. 最近做公司一个活动移动端使用fullpage插件填写input的时候遇见一个问题,手机自带的键盘弹出的时候会把页面顶出去,页面错 ...
- 移动端点击输入框,弹出键盘,底部被顶起问题(vue)
这个问题相信做移动端开发的童鞋会有深刻体会,以前用jq开发时就很头疼这个问题,每次底部footer部分需要用position:fixed,如果页面内容不是很长,没有超出屏幕范围,那就还好,没有问题:一 ...
- Flutter 弹出键盘屏幕溢出问题
在使用输入框获取焦点,弹出键盘的时候,会导致屏幕溢出, 解决办法: resizeToAvoidBottomPadding: false, //输入框抵住键盘 return Scaffold( appB ...
- (Vue)移动端点击输入框,弹出键盘,底部被顶起问题
(Vue)移动端点击输入框,弹出键盘,底部被顶起问题:https://www.jianshu.com/p/210fbc846544 问题描述:Vue开发中,当我们相对于父视图的底部布局子控件时,需要用 ...
随机推荐
- 10、zookeeper客户端curator
curator介绍 https://blog.csdn.net/wo541075754/article/details/68067872 关于第三方客户端的小介绍 zkClient有对dubbo的一些 ...
- ants - 目前开源最优的协程池
ants - 目前开源最优的协程池 目前我们的项目重度使用 ants 协程池,在开启一个 go 的时候并不是用 go 关键字,而是用一个封装的 go 函数来开启协程.框架底层,则是使用 ants 项目 ...
- [VueJsDev] 基础知识 - asyncTool.js异步执行工具
[VueJsDev] 目录列表 https://www.cnblogs.com/pengchenggang/p/17037320.html asyncTool.js 异步执行工具 ::: detail ...
- iview 表单验证 爆红后,有某些组件现隐,爆红和必填会错位,解决方案 组件上加key
iview 表单验证 爆红后,有某些组件现隐,爆红和必填会错位,解决方案 组件上加key
- RaspberryPi 树莓派 omxplayer 的音量设置方法实测有效!
正确的设置初始音量的方法,其中n/100=你期望的初始dB值, omxplayer --vol n target.media omxplayer介绍 omxplayer 在github中的描述是一个弃 ...
- C++ 字面值的前缀和后缀
一般字符字面值用前缀,数字字面值用后缀: --C++ Primer第五版2.1.3
- vue基础知识和原理(一)
1. vue基础知识和原理 1.1 初识Vue 想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象 demo容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法 demo容器 ...
- .Net 8.0 除gRPC之外的另一个选择,IceRPC之快束开始HelloWorld
作者引言 很高兴啊,我们来到了第一篇,程序员的HelloWorld,快速开始RPC之游 快速入门 演示如何在几分钟内,使用IceRPC,构建和运行一个完整的客户端-服务器(C/S)应用程序. 必要条件 ...
- 记录--没有await,如何处理“回调地狱”
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 太长不看 不要嵌套使用函数.给每个函数命名并把他们放在你代码的顶层 利用函数提升.先使用后声明. 处理每一个异常 编写可以复用的函数,并把 ...
- nginx进阶-3(32-34天)学习笔记
nginx进阶-3(33-34天)学习笔记 知识回顾 1. nginx部署单机网站 2.nginx部署多个网站 3.nginx访问方式 4.nginx 安全 5.nginx加密访问 实战 00---n ...