0

我正在開發一個應用程序,並且我有一個帶有編輯文本和一些其他信息的DialogFragment。FragmentDialog停留在狀態欄前,而應用程序不是全屏

當我點擊editText並出現鍵盤時,一切看起來都很好,除了API> = 21的設備外。該FragmentDialog停留在狀態欄的前面:

enter image description here

(白色部分是我DialogFragment)

主要活動已經有安卓fitsSystemWindows =清單上的「真」。 有沒有辦法讓狀態欄保持在FragmentDialog的前面?

編輯:我看到在出現的對話框時,黑色的背景朦朧應用於所有的屏幕上,包括狀態欄。我認爲這是因爲對話框出現在狀態欄的前面。是否可以在狀態欄下應用昏暗的背景?

謝謝!

回答

0

如果您嘗試創建Material Design指定的全屏對話框。通過

@Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     Dialog dialog = super.onCreateDialog(savedInstanceState); 
     dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     return dialog; 
    } 

調用此對話框: 將這個代碼在DialogFragment

getSupportFragmentManager().beginTransaction().add(android.R.id.content, FullScreenDialog.newInstance()).addToBackStack(null).commit(); 

快速解決方法是設置24dp的上邊距在基地佈局。

相關問題