问题:三星手机,带有底部菜单栏自动隐藏的功能,当开启此项功能时,在Activity中点击打开键盘时,会导致键盘弹出后,马上消失掉;
解决:
方法一:设置手机总是显示底部菜单栏,问题解决;
方法二:当进入该Activity时,手动隐藏底部菜单栏:
在Activity的onCreate()和onWindowFocusChanged()中隐藏底部菜单栏:
/** * 隐藏底部底部导航栏 */ public void hideNavigationBar() { Window window; window = getWindow(); WindowManager.LayoutParams params = window.getAttributes(); params.systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE|View.SYSTEM_UI_FLAG_FULLSCREEN; window.setAttributes(params); int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar | View.SYSTEM_UI_FLAG_FULLSCREEN; // hide status bar if (android.os.Build.VERSION.SDK_INT >= KITKAT) { uiFlags |= 0x00001000; //SYSTEM_UI_FLAG_IMMERSIVE_STICKY: hide navigation bars - compatibility: building API level is lower thatn 19, use magic number directly for higher API target level } else { uiFlags |= View.SYSTEM_UI_FLAG_LOW_PROFILE; } getWindow().getDecorView().setSystemUiVisibility(uiFlags); }