【问题标题】:Candidate view for custom keyboard messes up WhatsApp & other app layouts自定义键盘的候选视图弄乱了 WhatsApp 和其他应用程序布局
【发布时间】:2020-05-21 03:53:26
【问题描述】:
我有一个自定义键盘,当我打开它时,它可以很好地调整输入框,但是一旦我开始输入并弹出候选视图,应用程序的布局就会混乱。
我已经包含了一个 WhatsApp 的示例。它似乎不适用于其他应用程序。
没有候选视图:
候选视图会弄乱布局并稍微覆盖文本:
我的猜测是这与边距/填充有关,但我应该在哪里更正呢?
我发现的很多解决方案都是针对自定义文本框的,似乎没有什么能涵盖其他应用的文本框。
【问题讨论】:
标签:
java
android
xml
android-layout
【解决方案1】:
您可以通过向候选视图添加边距来修复与输入文本框的重叠。作为其样式的一部分,添加 android:layout_marginTop 并将其设置为 10sp 之类的值。
【解决方案2】:
有点晚,但可能对其他人有帮助。我通过覆盖 onComputeInsets 来修复它:
override fun onComputeInsets(outInsets: Insets?) {
super.onComputeInsets(outInsets)
if (!isFullscreenMode) {
outInsets?.contentTopInsets = outInsets?.visibleTopInsets
}
}