更详细的方法日后再更新,下面的代码主要出自DatePicker的那个自定义Dialog
一.style部分的核心代码
<style name="date_picker_dialog" parent="android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowBackground">@color/date_picker_bg</item>//这行代码如果不写的话dialog宽度不能铺满屏幕
</style>
二.java部分的核心代码
//下面的代码是自定义View的核心代码
//------------------------------------------------------------------------------------------------------------------
mPickerDialog = new Dialog(mContext, R.style.date_picker_dialog);//第一个参数是context基础属性在style先调好
mPickerDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);//设置窗体常见属性(这里去掉似乎不会有影响,因为在style中已经设置了)
mPickerDialog.setContentView(R.layout.dialog_date_picker);//自定义写好的dialog布局
//给window设置参数
Window window = mPickerDialog.getWindow();
if (window != null) {
WindowManager.LayoutParams lp = window.getAttributes();
lp.gravity = Gravity.BOTTOM;//Dialog在底部出现
lp.width = WindowManager.LayoutParams.MATCH_PARENT;
lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
window.setAttributes(lp);
}
//------------------------------------------------------------------------------------------------------------------