MUI开发APP文本框获得焦点并弹出软键盘
来源:互联网 发布:java 文件读取到缓存中 编辑:程序博客网 时间:2024/05/21 21:01
在使用MUI开发APP时,经常需要让文本框获得焦点,并弹出软键盘,方便用户操作。在使用混合模式开发时,这需要调用Native.js方法。
MUI官网展示了调用软键盘的示例:MUI官网示例。
调用软键盘操作时需要导入Java(Android)或Objective-C类对象,即:
var Context = plus.android.importClass("android.content.Context");_InputMethodManager = plus.android.importClass("android.view.inputmethod.InputMethodManager");
详情可参考:5+ App开发Native.js入门指南
我将该方法封装后只需调用NativeUtil.focusAndOpenKeyboard方法即可。但却出现了出乎意料的问题,时而在软键盘收回时页面被拉下出现偏移。
目前这个情况依然找不到解决方案,希望有解决过类似情况的博友不吝赐教。另外附上实现的代码:
(function($, owner){//***** 强制打开软键盘 Begin******var _softKeyboardwebView, _imm, _InputMethodManager, _isKeyboardInited = false;// 打开软键盘owner.initSoftKeyboard = function() {if (mui.os.ios) {_softKeyboardwebView = plus.webview.currentWebview().nativeInstanceObject();} else {_softKeyboardwebView = plus.android.currentWebview();plus.android.importClass(_softKeyboardwebView);_softKeyboardwebView.requestFocus();var Context = plus.android.importClass("android.content.Context");_InputMethodManager = plus.android.importClass("android.view.inputmethod.InputMethodManager");var main = plus.android.runtimeMainActivity();_imm = main.getSystemService(Context.INPUT_METHOD_SERVICE);}_isKeyboardInited = true;}// 打开软键盘owner.openSoftKeyboard = function() {if (!_isKeyboardInited) {owner.initSoftKeyboard();}if (mui.os.ios) {_softKeyboardwebView.plusCallMethod({"setKeyboardDisplayRequiresUserAction": false});} else {_imm.toggleSoftInput(0, _InputMethodManager.SHOW_FORCED);}}// 控件获得焦点并弹出软键盘 // input:需要获得焦点的控件 owner.focusAndOpenKeyboard = function(input) {setTimeout(function() {input.focus();owner.openSoftKeyboard();}, 200);}//***** 强制打开软键盘 End******}(mui, window.NativeUtil={}))
0 0
- MUI开发APP文本框获得焦点并弹出软键盘
- android 获得焦点并弹出软键盘
- EditText获取焦点并弹出软键盘
- edittext获取焦点并弹出软键盘
- 【问题记录】解决,打开app时,EditView的自动获得焦点,并且软键盘弹出
- 关于EditText获得焦点不弹出软键盘
- EditText焦点问题:进入app之后,就弹出软键盘
- android EditText 自动获取焦点并弹出软键盘
- Android EditText获取焦点并弹出软键盘
- Android 设置Edittext获取焦点并弹出软键盘
- Android EditText获取焦点并弹出软键盘
- Extjs 弹出窗口文本框获得焦点
- [Phonegap+Sencha Touch] 移动开发10 调用focus方法使输入框获得焦点,不弹出软键盘的解决方法
- [Phonegap+Sencha Touch] 移动开发10 调用focus方法使输入框获得焦点,不弹出软键盘的解决方法
- 使用popwindow制作弹出框与获得焦点弹出软键盘
- 文本框获取焦点并弹出下拉框
- 文本框获取焦点并弹出下拉框
- EditText不自动获得输入焦点(以及 获得焦点但不弹出输入法软键盘的方法)
- 修改postgresql的自动提交
- 有关JSTL中的fn方法库学习
- c++ 大数相加
- Java图形界面基础案例-飞行的小球
- java初学者笔记-->java基础
- MUI开发APP文本框获得焦点并弹出软键盘
- websocket即时通讯java SpringMVC mybatis 后台框架
- MathType公式编辑器快捷键操作
- 不是谁都可以当程序员的
- Android studio提示包含非ascii的解决方法
- shiro 编码解码
- Python爬虫:一些常用的爬虫技巧总结
- 详解如何将MathType嵌入word中
- CocoaPods安装和使用教程