我的要求是一个完全透明的状态栏,状态栏的更改颜色在同一activity
动态显示。
为此,我添加了getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
和style.xml
<item name="android:windowTranslucentNavigation">true</item>
<item name="android:windowTranslucentStatus">false</item>
所以它工作正常,但我需要在软键盘打开时调整屏幕。
所以我尝试android:windowSoftInputMode="adjustPan|adjustResize"
,但屏幕没有调整大小或滚动。任何人都可以帮助我。
答案 0 :(得分:5)
设置透明并动态更改颜色,不要设置标记FLAG_LAYOUT_NO_LIMITS
,然后在打开键盘时检查屏幕。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(getResources()
.getColor(R.color.themeToolbarColor));
}