android修改AlertDialog主题样式
android修改AlertDialog背景颜色 style默认的AlertDialog是深色背景想改成白色背景的默认如图:试过用自定义style设定背景色,但是界面会变的比较小,不够美观,没时间去研究,后面直接用系统自带的style解决想要的结果如图:代码如下// android.R.style.Theme_DeviceDefault_Light_Dialog_Alert 为白色背景主题Aler
·
android修改AlertDialog背景颜色 style
默认的AlertDialog是深色背景想改成白色背景的
默认如图:
试过用自定义style设定背景色,但是界面会变的比较小,不够美观,没时间去研究,
后面直接用系统自带的style解决
想要的结果如图:
代码如下
// android.R.style.Theme_DeviceDefault_Light_Dialog_Alert 为白色背景主题
AlertDialog dialog = new AlertDialog.Builder(BluetoothDetailActivity.this, android.R.style.Theme_DeviceDefault_Light_Dialog_Alert)
.setPositiveButton(R.string.bluetooth_unpair_dialog_forget_confirm_button, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
btDeviceManager.removeBond(mDevice);
finish();
}
})
.setNegativeButton(R.string.cancel, null)
.create();
dialog.setTitle(R.string.bluetooth_unpair_dialog_title);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); // 防止出现两行title
dialog.setMessage(BluetoothDetailActivity.this.getString(R.string.bluetooth_unpair_dialog_body, getDeviceName()));
dialog.show();
注意这里面有2行比较重要:
// android.R.style.Theme_DeviceDefault_Light_Dialog_Alert 为白色背景主题
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); // 防止出现两行title
如果不使用dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
出现的效果是这样的:
系统自带的style还有许多种,可以输入android.R.style.Alert查看支持哪些,android studio会自动联想出支持的AlertDialog的样式。
作者:帅得不敢出门
更多推荐
已为社区贡献14条内容
所有评论(0)