fragment内嵌webView,输入框获得焦点禁用系统输入法,弹出自定义输入法的处理

原创 2016年05月31日 10:51:35

 

今天老大安排了一个任务,开发一个自定义键盘,并且禁用webView的输入框焦点会自动弹出输入法的功能

过程不多说--->实践

-----------------》


1.先取出当前fragment的fragment

/**
     * 取出当前焦点的Fragment
     */
    public BaseWebFragment getVisibleFragment(FragmentManager mManagers) {
        FragmentManager fragmentManager = mManagers;
        List<Fragment> fragments = fragmentManager.getFragments();
        for (Fragment fragment : fragments) {
            if (fragment != null && fragment.isVisible())
                return (BaseWebFragment) fragment;
        }
        return null;
    }

2.一个工具类

/**
 * Created by kaiyuan on 16/5/31.
 */
public class KeyboardUtil {

    public static void hideKeyboard(Context context, View view) {
        InputMethodManager imm = (InputMethodManager) context
                .getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);

    }

    public static void showKeyboard(Context context, View view) {
        InputMethodManager imm = (InputMethodManager) context
                .getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.showSoftInput(view, 0);
    }
}


3.在显示自定义键盘的时候处理

final WebView wv= fobjm.getVisibleFragment(fobjm.getFragmentManager()).getWebView();
                    new Handler().post(new Runnable() {
                        @Override
                        public void run() {
                            wv.setVisibility(View.VISIBLE);
                            wv.requestFocus();
                            KeyboardUtil.hideKeyboard(context, wv);
                            mKeyboardManager.show();
                        }
                    });


---------》

mKeyboardManager
这个是我们自己开发的键盘了,你们在这里调用你们写的键盘显示方法就可以了

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android webview网页里输入框被输入法遮挡问题

网上对这个问题的描述较多,原因不尽相同; 我的WebViewActivity设置了Window.FEATURE_NO_TITLE和WindowCompat.FEATURE_ACTION_BAR;ma...

Android WebView 禁止输入

通过设置FOCUS_BLOCK_DESCENDANTS,可以屏蔽子控件获取焦点。页面将不会弹出输入键盘,从而实现不可编辑。

Android webview网页里输入框被输入法遮挡问题

WebViewActivity不能设置成全屏,然后设置android:windowSoftInputMode="adjustResize",这样就会调整webview的布局,输入框不会被输入法挡住

webview中有输入框,输入法挤压页面,在低端机器出现页面错乱

webview中有输入框,输入法挤压页面,在低端机器出现页面错乱 的Android端解决方法

二十六、自定义输入框--输入法与表情面板切换

自定义的输入框一般都有输入法与表情面板切换的功能,要做到美好的切换体验也是不容易的。切换时不要闪,闪的原因是输入法出现时,会把activity往上挤压,输入法隐藏时,activity又会复原,这个过程...

TextView/EditText字体阴影 ,自动换行,焦点获取,输入法回车键前往,自定义光标

Android字体阴影  strings.xml文件定义字符串中的标签  Android TextView 自动换行问题  关于android软键盘enter键的替换与事件监听  软件盘的...

Android中EditText点击获得焦点后无法显示输入法键盘

【背景】 android中EditText的Enable已经设置为True了,表示可以被编辑, 但是点击输入框,获得焦点后,无法显示输入法,导致无法输入内容。 比如: Desc...

长按输入框跳出select all,cut,input method等菜单,点击input method跳出所有得到的输入法列表

TextView.javaprivate static final int ID_SWITCH_INPUT_METHOD = android.R.id.switchInputMethod;protec...

封装有输入框的 PopupWindow,并解决输入法弹出将其遮挡问题

封装弹窗输入框PopupWindow,并解决输入法弹出将其遮挡解决方法
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)