我正在开发一个IME应用程序,但我在理解InputMethodService结构时遇到了麻烦。我的主服务类扩展了InputMethodService,在onCreateInputView上它返回我的自定义线性视图。
我不理解的部分是InputMethodService在屏幕的下半部分呈现视图,即整个宽度。这是我的知识不足的部分。我研究过Android开发者,但是,到目前为止,无济于事。
我的问题是如何渲染分屏键盘?
我看到两种可能性。我可以使用一些值设置操作InputMethodService在屏幕底部呈现的底层窗口,或者我的类应该扩展AbstractInputMethodService并呈现它自己的UI。后者我需要了解更多。
答案 0 :(得分:0)
您在onCreateInputView中返回自定义视图。在自定义视图中,您有3个视图 - 左侧,右侧和中间。在中间,使其背景透明。使根视图的背景也透明。它应该显示出来。
然后转到onComputeInsets。这可以控制您的视图在屏幕上的位置。告诉它contentInset是-view.getHeight()。这将导致在显示键盘时根本不移动后台应用程序。
如果你想在主要应用程序中触摸可触摸的空间,你也需要玩触摸插图。