Android浮动键盘

Android浮动键盘,android,keyboard,floating,Android,Keyboard,Floating,是否可以通过编程更改键盘的位置? 我正在为图腾开发一个应用程序,如果键盘似乎固定在底部,那么使用起来就非常困难 我试图创建一个扩展InputMethodService的自定义键盘,我可以更改键的布局,但无法更改键盘的视图位置 允许松开键盘并垂直拖动它,他们如何做到这一点?将键盘视图放在RelativeLayout或FrameLayout中,并在OnTouchListener上更改其边距。比如说 public boolean onTouch(View view, MotionEvent event

是否可以通过编程更改键盘的位置? 我正在为图腾开发一个应用程序,如果键盘似乎固定在底部,那么使用起来就非常困难

我试图创建一个扩展InputMethodService的自定义键盘,我可以更改键的布局,但无法更改键盘的视图位置


允许松开键盘并垂直拖动它,他们如何做到这一点?

将键盘视图放在
RelativeLayout
FrameLayout
中,并在
OnTouchListener
上更改其边距。比如说

public boolean onTouch(View view, MotionEvent event) {
ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
boolean performClick = false;

switch (event.getAction()) {
    case MotionEvent.ACTION_MOVE:
        moveToY = (int) (event.getRawY() - dy);
        moveToX = (int) (event.getRawX() - dx);
        params.topMargin = moveToY;
        params.leftMargin = moveToX;
        view.setLayoutParams(params);
        performClick = false;
    break;

    case MotionEvent.ACTION_UP:
        performClick = true;
        break;

    case MotionEvent.ACTION_DOWN:
        dy = event.getRawY();
        dx = event.getRawX();
        performClick = true;
        break;
}
return !performClick; }

更详细的浮动键盘视图示例

在InputMethodService内部,您可以参考
窗口
。添加拖动逻辑以更新
窗口的
布局参数
。确保正确地在计算机上执行
oncomputerinset
。值得注意的是,即使您尝试为
窗口使用新的
布局参数
,窗口的重心始终处于水平中心和垂直底部

看看我的样品

这没有帮助。请更新您的回购协议,它看起来很有希望,但它工作不正常。什么是工作不正常,您能在回购协议中创建一个问题吗?