[英]Set height of RelativeLayout to match height of Soft Keyboard
执行此操作的正确方法是设置软输入以满足您的需要。 尝试按照片段将此行放在片段的 onCreate 方法中:
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
您可以使用一行设置多种模式,例如
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE|WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
如果您正在进行一项活动,您只需在 android 清单文件中为每个活动进行调整
<activity
android:name=".SomeActivity"
android:windowSoftInputMode="adjustResize" />
或android:windowSoftInputMode="adjustPan|adjustResize"
检查 adjustPan、adjustUnspesified、adjustResize 或其他一些软输入选项之间哪些设置更适合您的需求。
我想出了一个似乎工作正常的解决方案。 只有 1 个问题。 出于某种原因, Status Bar
会随着这段代码变白。知道为什么吗?
ViewCompat.setOnApplyWindowInsetsListener(this.getWindow().getDecorView(), (v, insets) -> {
int keyboardHeight = insets.getInsets(WindowInsetsCompat.Type.ime()).bottom;
//Code logic
return insets;
});
我如何设置Status Bar
颜色:
<style name="AppTheme.GuessWord">
<item name="colorPrimaryDark">@color/primaryColor</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.