android - FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS 使内容位于导航栏下方

标签 android android-5.0-lollipop material-design

使用以下代码会使我的布局扩展到导航栏下方。我只是想更改状态栏颜色而不弄乱布局。

int currentapiVersion = android.os.Build.VERSION.SDK_INT;
        if (currentapiVersion >= android.os.Build.VERSION_CODES.LOLLIPOP){
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            getWindow().setStatusBarColor(this.getResources().getColor(R.color.statusbar_color));
            //TRANSPARENT FOR TESTING
            getWindow().setNavigationBarColor(this.getResources().getColor(android.R.color.transparent));
        }

我觉得我错过了什么......

enter image description here

最佳答案

只需添加

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                                |  View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);

它对我有用。

关于android - FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS 使内容位于导航栏下方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26962129/

相关文章:

android - SyncAdapter 与 JobScheduler

android - 如何实现像instagram一样长按图片预览

flutter - 如何在 flutter 的抽屉中添加分隔符和字幕

安卓工作室 : How to stop getting error marks on unused symbols

安卓牛轧糖 : Why do checkboxes on Fragment have incomplete state when selected programmatically (but look fine on Lollipop)

android - 在 Android 5.0 API 21 Lollipop 中,Seek Bar thumb 不透明

html - 每张 MDlite 卡的新背景图片

android - 将我的应用中任何 channel 的Youtube视频与YoutubeApiPlayer一起使用是合法的

android - LocalStorage 与 Sqlite 数据库

android - 图形布局引发问题