[Phonegap+Sencha Touch] 移动开发22、安卓4.0.X的webview或自带浏览器中,去除输入框外面的蓝色边框
来源:互联网 发布:印度药品 知乎 编辑:程序博客网 时间:2024/06/06 09:08
这个css的方法去除边框有副作用,还是废弃掉吧。需要的请看最下面的办法。
安卓4.0.X中,有焦点的输入框是这样的,
蓝色边框好丑,去除的办法是,加上下面的css:
a:focus,input:focus,textarea:focus {
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-user-modify: read-write-plaintext-only;
}
下面是去除后的效果:
上面的css办法有副作用,导致输入法不再能够输入多个字符,比如用中文输入法打“我们”,进入文本框的就只有“我”。本来是google到的解决办法,但是国外大部分使用字母的国家是无所谓,咱们用中文就不能忍受了。
另一个办法:
打开你phonegap项目中的文件
\platforms\android\CordovaLib\src\org\apache\cordova\CordovaActivity.java
文件开头引入这几个包
- import android.view.ViewGroup.OnHierarchyChangeListener;
- import android.view.inputmethod.InputMethodManager;
- import android.widget.AutoCompleteTextView;
- import android.text.InputType;
- import android.os.Build;
- public void init() {
- CordovaWebView webView = makeWebView();
- //代码开始
- if (Build.VERSION.SDK_INT == Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) {//4.0.3
- webView.setOnHierarchyChangeListener(new OnHierarchyChangeListener() {
- @Override
- public void onChildViewRemoved(View parent, View child) {}
- @Override
- public void onChildViewAdded(View parent, View child) {
- final AutoCompleteTextView myWebTextView;
- if( child.getClass().getName().equals("android.webkit.WebTextView")){
- myWebTextView =(AutoCompleteTextView) child;
- myWebTextView.getHandler().post(new Runnable() {
- @Override
- public void run() {
- myWebTextView.setBackgroundColor(Color.TRANSPARENT);
- //myWebTextView.setCursorVisible(false);
- myWebTextView.setTextColor(Color.TRANSPARENT);
- //set lines to 0 because sethighlightcolor does not work
- myWebTextView.setLines(0);
- myWebTextView.setInputType(InputType.TYPE_NULL);
- myWebTextView.setFocusable(true);
- myWebTextView.setFocusableInTouchMode(true);
- if(myWebTextView.hasFocus())
- myWebTextView.clearFocus()
- //sometimes the keyboard doesn't show up by just requestFocus,so i have to force it by showSoftInput
- InputMethodManager mgr = (InputMethodManager) CordovaActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
- myWebTextView.requestFocus();
- mgr.showSoftInput(myWebTextView, InputMethodManager.SHOW_FORCED);
- }
- });
- }
- }
- });
- }
- //代码结束
- this.init(webView, makeWebViewClient(webView), makeChromeClient(webView));
- }
光标会有2个,看起来有重影的样子,不过还是可以接受的。
一劳永逸的话。你可以改下面这个文件
C:\Users\用户名\.cordova\lib\android\cordova\3.4.0\framework\src\org\apache\cordova\CordovaActivity.java
这样,以后创建的phonegap项目都会有这段代码了
0 0
- [Phonegap+Sencha Touch] 移动开发22、安卓4.0.X的webview或自带浏览器中,去除输入框外面的蓝色边框
- [Phonegap+Sencha Touch] 移动开发22、安卓4.0.X的webview或自带浏览器中,去除输入框外面的蓝色边框
- [Phonegap+Sencha Touch] 移动开发16 安卓webview中,input输入框不触发backspace回退键事件的解决办法(带来其他bug,作废)
- [Phonegap+Sencha Touch] 移动开发68 Sencha Touch弹出键盘挡住输入框的解决办法
- [Phonegap+Sencha Touch] 移动开发42 安卓4.4的webview用canvas画图卡的要死
- [Phonegap+Sencha Touch] 移动开发17 使用桌面chrome调试安卓设备上的chrome和cordova app(webview)
- [Phonegap+Sencha Touch] 移动开发17 使用桌面版chrome调试安卓设备上的chrome和webview
- [Phonegap+Sencha Touch] 移动开发17 使用桌面版chrome调试安卓设备上的chrome和webview
- [Phonegap+Sencha Touch] 移动开发70 cordova app中使用增强的webview
- [Phonegap+Sencha Touch] 移动开发29 安卓navigator.camera.getPicture得到图片的真实路径
- [Phonegap+Sencha Touch] 移动开发29 安卓navigator.camera.getPicture得到图片的真实路径
- [Phonegap+Sencha Touch] 移动开发52 安卓原生emoji支持的研究
- [Phonegap+Sencha Touch] 移动开发39 某些安卓手机的webview使用location.href="tel:123456"不能调到打电话的界面
- [Phonegap+Sencha Touch] 移动开发19 某些安卓手机上弹出消息框 点击后不消失的解决办法
- [Phonegap+Sencha Touch] 移动开发19 某些安卓手机上弹出消息框 点击后不消失的解决办法
- [Phonegap+Sencha Touch] 移动开发40 解决iOS+Phonegap+Sencha touch Cupertino主题下,只读(disabeld)输入框文字看不见的问题
- [Phonegap+Sencha Touch] 移动开发23 Android和IOS的webview点击穿透的缓解办法
- [Phonegap+Sencha Touch] 移动开发46 导出带数字证书签名的apk
- [Phonegap+Sencha Touch] 移动开发21 Sencha touch tapHold事件 触发时间太长的解决办法
- 百度面试题
- 2014/8/3 记
- PUE简介
- poj 1850(组合数学)
- [Phonegap+Sencha Touch] 移动开发22、安卓4.0.X的webview或自带浏览器中,去除输入框外面的蓝色边框
- 《GOF设计模式》—原型(Prototype)—Delphi源码示例:浅拷贝和深拷贝
- [Phonegap+Sencha Touch] 移动开发23 Android和IOS的webview点击穿透的缓解办法
- [Phonegap+Sencha Touch] 移动开发24 打包wp8.1的App,运行时输入框聚焦弹出软键盘之后,界面上移而不恢复原位的解决办法
- 如何避免length10000问题
- Linux 2.6 内核阅读笔记 信号
- 《GOF设计模式》—原型(Prototype)—Delphi源码示例:原型接口
- [Phonegap+Sencha Touch] 移动开发25 关于sencha touch在华为、红米、HTC等部分手机下hide事件失效,msgbox无法关闭的解决方案
- Disruptor使用入门