鍵盤彈出後又消失的問題
阿新 • • 發佈:2019-02-14
問題:三星手機,帶有底部選單欄自動隱藏的功能,當開啟此項功能時,在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); }