【技巧】ionic3自动聚焦暴力实现

很早前和群里的人探讨过自动聚焦,在android上可以,但是在ios上失败,后来在网上看到这个:

Unfortunately this is likely an unfixable issue. Input.focus() only works if called inside an stack initiated by a touch/mouse/keyboard event. It is known limitation of WK and UIWebView.

然后就放弃了ios上的实现。再后来不甘心,又尝试了下面的方法: 1、首先在config.xml文件添加配置项:

<preference name="KeyboardDisplayRequiresUserAction" value="false" />

2、在html里添加input组件:

<ion-input type="text" #inputToFocus placeholder="test"></ion-input>

3、在ts里手动设置聚焦:

 ionViewDidLoad(){
   this.inputToFocus.setFocus();
 }

运行查看效果,发现没反应,真机调试发现错误提示: _BSMachError, (os/kern) invalid capability (0x14) “Unable to insert COPY_SEND” 有资料说明:页面刚加载完成就立即就将键盘弹起,因此报错,延时一段时间弹出键盘框即可。于是加上延时200ms:

ionViewDidLoad(){
   setTimeout(() => {
     this.inputToFocus.setFocus();
   },200);
 }

仍然报错,延时改为2000ms后成功运行。

这种类似猜测时间的方法总感觉治标不治本,但暂时没有更多有效资料的情况下,有此需求的先将就着这样处理。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏木子昭的博客

往"某度文库"上传资源之前,请先做好这些...想到一句好玩的话:知道是你干的,只是懒得抓你!如果你喜欢python,喜欢故事,请点赞或关注我!您的支持是对作者最大的鼓励!

先讲个相关的故事:匿名黑客的"复仇行动" 2010年12月10日,黑客组织匿名者发布了一条消息,解释了他们发起最近一次代号为”复仇行动”的攻击的大致动机(Pr...

37713
来自专栏phodal

让你的「微信小程序」运行在Chrome浏览器上,让我们使用WebStorm

「微信小程序」的开发框架体验起来,还不错——自带了UI框架。但是问题是他的IDE,表现起来相当的糟糕——其实主要是因为,我当时买WebStorm License...

6546
来自专栏小樱的经验随笔

深入理解USB流量数据包的抓取与分析

在一次演练中,我们通过wireshark抓取了一个如下的数据包,我们如何对其进行分析?

3462
来自专栏偏前端工程师的驿站

Thinking in React Implemented by Reagent

前言  本文是学习Thinking in React这一章后的记录,并且用Reagent实现其中的示例。 概要 构造恰当的数据结构 从静态非交互版本开始 追加交...

20610
来自专栏Crossin的编程教室

【Python 第3课】IDE

昨天的课发出去之后,有不少同学发来了反馈,有完成截屏的,也有遇到问题的。一些问题突然让我意识到,很多地方自己描述得不是很到位,会产生歧义,或者干脆就很难听懂。比...

2846
来自专栏Albert陈凯

2018-05-17 架构师技能图谱,搞懂这些找工作无敌数据结构常用算法并发操作系统设计模式运维 & 统计 & 技术支持中间件网络数据库搜索引擎性能大数据安全常用开源框架分布式设计设计思想 & 开发模

1.1K4
来自专栏SEO

这9种URL错误对SEO优化有致命影响

4136
来自专栏偏前端工程师的驿站

Thinking in React Implemented by Reagent

1063
来自专栏FSociety

Python爬取猫眼「碟中谍」全部评论

评论算保存完了,近期会再做一个关于此次数据的可视化分析。另外阿汤哥真心太帅了,全程打肾上腺素,各位还没去看的赶紧~

780
来自专栏進无尽的文章

扒虫篇- Bug日志 Ⅷ

不执行的原因是 在VC中使用这个ImageUploaderManager时,需要设置为全局变量,如果是局部变量的话,很快会被销毁掉,其中的代理自然不会执行了。

1903

扫码关注云+社区

领取腾讯云代金券