[Android] Statusbar disappear after inappbrowser window opened (go in full screen)
在使用inappbrowser时,打开开发现顶部的状态栏在部分安卓变成了黑色,部分则无显示出来。
实际上是被收起来了不显示,可通过修改组件代码进行解决。
找到InAppBrowser.java大概在811行处(因为每个版本的位置有差异),找到以下代码片段
if (fullscreen) {
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
替换成下面代码,则实现透明导航栏,使用应用的背景色
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);//设置透明状态栏
dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);//设置透明导航栏
}
如若设置导航栏为其他色,如下:
// 此段未验证,不生效?
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
dialog.getWindow().setStatusBarColor(Color.TRANSPARENT);//将状态栏设置成透明色或者其他色
dialog.getWindow().setNavigationBarColor(Color.TRANSPARENT);//将导航栏设置为透明色或者其他色
}
1954

被折叠的 条评论
为什么被折叠?



