DialogFrament配置Dialog基本配置。

// 隱藏Dialog的標題 ,設置Dialog爲無標題模式
1.setStyle(DialogFragment.STYLE_NO_TITLE, 0);

// 設置Dialog爲無標題模式
 getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);

//當Dialog中有EditText 不自動彈出軟鍵盤, 隱藏軟鍵盤
getDialog().getWindow()
.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

//設置Dialog外部點擊不隱藏Dialog  
getDialog().setCanceledOnTouchOutside(false); 

//設置Dialog的背景色爲透明,/ 設置Dialog背景色爲透明
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

//dialog彈出後會點擊屏幕或物理返回鍵,dialog不消失
//請注意這個在dialogFragment請直接使用setCancelable(false)。
dialog.setCancelable(false);

//dialog彈出後會點擊屏幕,dialog不消失;點擊物理返回鍵dialog消失
dialog.setCanceledOnTouchOutside(false);

dialog在dialogFragment配置

  • 整體代碼以下
// 設置Dialog爲無標題模式
setStyle(DialogFragment.STYLE_NO_TITLE, 0);

// 隱藏軟鍵盤
getDialog().getWindow()
.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

// 設置Dialog爲無標題模式
getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE);

// 設置Dialog背景色爲透明
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

/**
 * dialog.setCanceledOnTouchOutside(false);
 * dialog彈出後會點擊屏幕,dialog不消失;點擊物理返回鍵dialog消失
 */

getDialog().setCanceledOnTouchOutside(dialogParams.isCanceledOnTouchOutside); 
// 注意在DialogFrament中必須這樣設置才能不彈出Dialog

/**
 *  dialog.setCancelable(false);
 *  dialog彈出後會點擊屏幕或物理返回鍵,dialog不消失
 */
setCancelable(dialogParams.isCancelable);
相關文章
相關標籤/搜索