如何编程分屏键盘?

时间:2016-08-22 20:25:02

标签: android

我正在开发一个IME应用程序,但我在理解InputMethodService结构时遇到了麻烦。我的主服务类扩展了InputMethodService,在onCreateInputView上它返回我的自定义线性视图。

我不理解的部分是InputMethodService在屏幕的下半部分呈现视图,即整个宽度。这是我的知识不足的部分。我研究过Android开发者,但是,到目前为止,无济于事。

我的问题是如何渲染分屏键盘?

我看到两种可能性。我可以使用一些值设置操作InputMethodService在屏幕底部呈现的底层窗口,或者我的类应该扩展AbstractInputMethodService并呈现它自己的UI。后者我需要了解更多。

1 个答案:

答案 0 :(得分:0)

您在onCreateInputView中返回自定义视图。在自定义视图中,您有3个视图 - 左侧,右侧和中间。在中间,使其背景透明。使根视图的背景也透明。它应该显示出来。

然后转到onComputeInsets。这可以控制您的视图在屏幕上的位置。告诉它contentInset是-view.getHeight()。这将导致在显示键盘时根本不移动后台应用程序。

如果你想在主要应用程序中触摸可触摸的空间,你也需要玩触摸插图。