今天折腾了一下自动弹出软键盘的功能,论坛里面逛了一下,貌似目前只有通过nativejs实现,然后发现在android下相应的js代码需要耗费很长的事件(华为p6上是5到9秒不等),并且这段时间内程序会处于假死状态;
瞬间感觉吐槽能量又要爆发了;
虽然之前已经累计好几个问题没有得到解决,但是都没有想要吐槽的意思,因为那几个问题没有对应的环境官方确实很难重现,最近也有打算整理一下,提供一些代码,便于官方跟踪问题;
但是像自动弹出软键盘这种基础的功能,都很难找到满意的解决方案,实在是有点说不过去啊;
建议官方自己开发一个5+的plugin(plus.tools.xxxx),把一些基础的功能整合进来,比plus.speech这种然并卵的功能有意义得多了;
刚开始时只是用点皮毛的时候感觉这套框架还是挺不错的,但越用到后面就越感觉不顺;
最近公司在招原生开发的人了,感觉自己快失业了;
纯属吐槽,如有冒犯,见谅;
- 发布:2015-08-11 22:58
- 更新:2015-08-11 23:42
- 阅读:1959
自动弹出软键盘
1,你说的添加添加一些plus.tools确实有想过的,比如软键盘的弹出缩回事件,控制软键盘弹出缩回等。
2,发起问题的时候邀请相关人,或私信相关人,可能相关人有在忙别的事情,就疏忽了发的问题,在此致歉了。再有可以qq直接联系官方人员,督促解决。
3,再有,我使用红米1s测试过,说不上快但1,2秒也就出现了。参考代码如下:
document.addEventListener("plusready",function(){
// setTimeout(showInput,1000);
showInput();
},false);
function showInput(){
var Context = plus.android.importClass("android.content.Context");
var InputMethodManager = plus.android.importClass("android.view.inputmethod.InputMethodManager");
var main = plus.android.runtimeMainActivity();
var imm = main.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.SHOW_FORCED);
console.log(document.activeElement.id);
document.getElementById("input").focus();
console.log(document.activeElement.id);
} 蔡繁荣 - 发表是最好的记忆
其实可以借鉴下水果的策略,iOS5的时候很多越狱插件,后来苹果都自己收入囊中,慢慢将体验提升。等于市场在帮助苹果做调研,当然苹果的策略一向如此,待市场成熟,再切入进去。
比如弹出软键盘功能,Android和iOS每次都要写两套代码,其实这是使用频率很高的功能,建议官方将其集成到h5+中,大家就不用各自实现了。
@DCloud_Android_磊子
chender (作者)
光上面的代码还不行哦,还得加上:
var view = plus.android.currentWebview();
plus.android.importClass(view);
view.requestFocus();
2015-08-12 09:03
Android_磊子
加这一句是为了,窗口隐藏再次显示时候自动弹出软键盘。
2015-08-12 11:38
飛錛
@1595 请问怎么设置自动弹出的软键盘为数字键盘
2017-02-23 11:07
qq58485273
怎么我试了不行啊!!!自动弹出来后,马上又自动隐藏了。怎么回事?
2018-03-22 11:01
qq58485273
回复 Android_磊子:延时触发自动弹出键盘后,不会自动隐藏了,但是输入框拿不到焦点啊,还是要再点下输入框才能输入。怎么解决?
2018-03-22 11:05