DialogFrament配置Dialog基本配置。

本文介绍如何通过编程方式自定义DialogFragment的样式,包括隐藏标题、禁用软键盘自动弹出、设置点击外部区域是否关闭对话框及背景透明等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


// 隐藏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);

转载于:https://my.oschina.net/u/1175746/blog/881098

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值