javascript– 防止键盘关闭

javascript– 防止键盘关闭,第1张

概述我对这个实现有点挣扎.我正在构建我的第一个HelloWorld!android(cordova)应用程序,需要键盘始终显示并避免隐藏它,就像用户单击后退按钮或任何其他输入时一样.为什么?基本上我的HTML中没有任何输入元素来触发焦点&显示键盘,它是一种“终端模拟器”,用户执行某些命令.键盘根本没有显

我对这个实现有点挣扎.我正在构建我的第一个Hello World! android(cordova)应用程序,需要键盘始终显示并避免隐藏它,就像用户单击后退按钮或任何其他输入时一样.为什么?基本上我的HTML中没有任何输入元素来触发焦点&显示键盘,它是一种“终端模拟器”,用户执行某些命令.键盘根本没有显示所以我去了,我添加了以下内容:

安装了Ionic Keyboard插件

cordova plugin add https://github.com/driftyco/ionic-plugins-keyboard.git

添加了config.xml的权限

 <feature name="Keyboard">    <param name="androID-package" value="com.ionic.keyboard.IonicKeyboard" />    <param name="onload" value="true" /></feature>

在我的App模块中,以下行:

var myApp = angular.module('myApp', ['ionic']);myApp.run(function($ionicPlatform) {    $ionicPlatform.ready(function() {        if(window.cordova && window.cordova.plugins.Keyboard) {            window.cordova.plugins.Keyboard.show(); // Show Keyboard on startup// and here Trigger a show keyboard when hIDden            window.addEventListener('native.hIDekeyboard', keyboardHIDeHandler);             function keyboardHIDeHandler(e){                window.cordova.plugins.Keyboard.show();            }        }    });});

现在,上面的实现工作,但我不认为这样处理它是优雅的,我不喜欢键盘关闭然后再次d出的感觉.

>除了Ionic键盘的插件之外还有其他方法可以配置我的AndroID应用程序以便始终显示键盘吗?

>这是使用Cordova / Ionic框架的正确方法吗?

希望我走在正确的轨道上.任何提示都将受到赞赏.

谢谢

截图

解决方法:

编辑:我认为这样做的标准方法是:https://stackoverflow.com/a/1510005/1091751.
当按下后退按钮时,这不会阻止它关闭,但是,您可以尝试在platforms / androID中编辑实际的Cordova AndroID文件以覆盖以下方法(取自https://stackoverflow.com/a/6571093/1091751):

@OverrIDepublic boolean onKeyPreIme(int keyCode, KeyEvent event) {    if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {        inputMethodManager manager = (inputMethodManager) this.getContext().getSystemService(Context.input_METHOD_SERVICE);        manager.toggleSoftinput(0, inputMethodManager.SHOW_FORCED);    }    return false;}

我没有测试过这个,但是如果你添加一个隐藏的输入,当你的应用加载时你最初关注它,然后在它失去焦点时不断重新聚焦,该怎么办?我不确定这与显式调用keyboard.show()有什么不同,但它可能会阻止键盘打开/关闭抖动.

就像是:

<input constant-focus ID="hIDdenFocus" type="hIDden">

然后

document.getElementByID('hIDdenFocus').focus()

然后不断重新调整它以保持键盘:
    // HTML标签=恒定焦点

 .directive('constantFocus', function(){      return {        restrict: 'A',        link: function(scope, element, attrs){          element[0].addEventListener('focusout', function(e){            element[0].focus();          });        }      };    })
总结

以上是内存溢出为你收集整理的javascript – 防止键盘关闭全部内容,希望文章能够帮你解决javascript – 防止键盘关闭所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1107575.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存