Android开发,输入框不被输入法顶上去

移动开发 码拜 8年前 (2017-05-05) 3098次浏览
下图是微信里的截图,本人想做的效果就是,当输入框获取焦点时弹出输入法输入法把输入框顶上去,但是整个页面不要被顶上去,相似微信这种效果,问一下该怎么做,本人查了相关资料,要么就是输入框不动,要么就是整个页面都被输入法顶上去了,知道的朋友麻烦给个解决办法,谢谢了!
Android开发,输入框不被输入法顶上去
解决方案

4

本人怎么试了微信聊天,发现也是顶上去了?

2

顶上去又没事

2

Android开发,输入框不被输入法顶上去标题和你主题是反的啊

2

在外面套一层scrollview

4

使用相对布局即可

10

刚好看到一个帖子:http://blog.csdn.net/zhufuing/article/details/17783333
把你输入框那一行改成 PopupWindow来实现就可以了

10

试下在 Activity 下添加:android:windowSoftInputMode=”adjustPan|stateHidden”

10

可以用WindowManager添加一个子窗口来实现

    public void showEditor(){
        if(!isEditorShown) {
            WindowManager manager = getWindowManager();
            View view = getEditView();   //自定义的编辑控件,可以是一个EditText
            WindowManager.LayoutParams params = new WindowManager.LayoutParams();
            params.gravity = Gravity.BOTTOM;
            params.height = WindowManager.LayoutParams.WRAP_CONTENT;
            params.format = PixelFormat.RGBA_8888;
            params.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE | WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE;
            params.type = WindowManager.LayoutParams.TYPE_APPLICATION_SUB_PANEL;
            params.flags = WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL;
            EditorManger.prepareEditor(manager,this,view);
            manager.addView(view, params);
        }
        if(editText != null){
            editText.setText(getCellValue(selectRowIndex,selectColumnIndex));
        }
        isEditorShown = true;
    }

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Android开发,输入框不被输入法顶上去
喜欢 (0)
[1034331897@qq.com]
分享 (0)