Android 沉浸式与输入法冲突

遇到过一个非常奇葩的问题,使用开源库中的沉浸式代码,

调用了

public static void setRootViewFitsSystemWindows(Activity activity, boolean fitSystemWindows) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            ViewGroup winContent = (ViewGroup) activity.findViewById(android.R.id.content);
            if (winContent.getChildCount() > 0) {
                ViewGroup rootView = (ViewGroup) winContent.getChildAt(0);
                if (rootView != null) {
                    rootView.setFitsSystemWindows(fitSystemWindows);
                }
            }
        }

    }

这段实现来代替

android:fitsSystemWindows

然后,就跟键盘冲突了,死活无法Resize布局,一直被键盘覆盖布局,如果你在做沉浸式状态栏的话,务必了解,

全屏要么废弃代码中的设置,要么废弃xml中的设置,这里我建议废弃代码中的对fitsSystemWindows属性的设置,转为使用XML实现。不然真的,很坑。

你可能感兴趣的:(android,java)