我的应用程序只有一个自定义键盘,我在布局中有一个KeyboardView。如果我只是使用内置键盘,我可以进行布局" shift"键盘上方显示控件,编辑文本等。
这可以用于KeyboardView吗?我可以向上移动布局的内容,以便键盘视图在显示时不会重叠任何控件吗?
修改
我想一些没有Android经验的人会把问题搁置一边。如果你了解Android,你就会理解这个问题,但无论如何,这是一个例子。
说我的布局类似:
<RelativeLayout>
<EditText />
</RelativeLayout>
如果我只是使用内置软键盘,我可以在AndroidManifest.xml中设置adjustPan和/或adjustResize参数,当我将焦点放在EditText上时软键盘出现时,布局会发生变化因此,当显示软键盘时,编辑文本(以及下面的任何内容)仍然可见。
但是我说:
<RelativeLayout>
<EditText />
<android.inputmethodservice.KeyboardView />
</RelativeLayout>
我创建了一个自定义键盘xml文件,并将其绑定到我的KeyboardView,并在编辑文本聚焦时显示它。它不是可安装的InputMethodService键盘,而是仅用于我的活动的特定键盘。不幸的是,KeyboardView现在将重叠编辑文本和任何其他控件。 adjustPan和/或adjustResize不适用。那么是否有一个简单,简单的解决方案来获得与默认软键盘相同的行为,即当其他控件变为可见时将其移动?
有人表示我可能不得不做自己的转变,这似乎很可能。但我希望有一个更简单的解决方案,特定于KeyboardView。
注意如果您之前没有使用过KeyboardView,请不要回复。这是KeyboardView特有的。如果您还没有使用过键盘视图,请不要暂停一个专门处理该小部件的问题。