我按照网上隐藏导航栏的方法进行了尝试,应用虽然能隐藏,但是隐藏有一个过渡,出现短暂的留白现象。不知道是不是在onCreate有耗时操作导致的。
```**MainActivity.java**
super.onCreate(savedInstanceState);
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WindowManager.LayoutParams attributes = getWindow().getAttributes();
attributes.systemUiVisibility = View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
getWindow().setAttributes(attributes);
}
```
推荐你用ImmersionBar开源工具
oncreate是开始创建这个时候界面是没有创建完成并显示的,所以你在这进行导航栏的隐藏应该会显示空界面。
启动应用时隐藏导航栏最后放在onresume中实现。(启动应用是会有一个过渡界面,不知道你的主题是怎么设的,默认是白色吧,onresume会在界面都创建完成开始显示了才会调用)