/**
*自定义dialog基类无边框,不标题栏;
*/
public abstract class BaseDialog extends Dialog {
protected Context mContext;
public BaseDialog(Context context) {
super(context, R.style.ShareDialog);
this.mContext = context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WindowManager.LayoutParams params = getWindow().getAttributes();
params.height = LayoutParams.MATCH_PARENT;
params.width = LayoutParams.MATCH_PARENT;
params.gravity = Gravity.CENTER;
getWindow().setAttributes(params);
getWindow().setWindowAnimations(R.style.ConfirmDialogAnimstyle);
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
}
protected void addClickCancel() {
View view = findViewById(R.id.dialog_content);
if (view !=
null) {
view.setOnClickListener(
new android.view.View.OnClickListener() {
@Override
public void onClick(View v) {
dismiss();
}
});
}
}
}
<!
<style
name=
"ShareDialog">
<
item name=
"android:windowBackground">@android:color/transparent</
item>
<
item name=
"android:windowFrame">@null</
item>
<
item name=
"android:windowNoTitle">
true</
item>
<
item name=
"android:windowIsFloating">
false</
item>
<
item name=
"android:windowIsTranslucent">
true</
item>
<
item name=
"android:windowContentOverlay">@null</
item>
<
item name=
"android:backgroundDimEnabled">
true</
item>
</style>
自定义一个dialog继承baseDialog布局自己随便定义什么样的都可以; 例如下面的:
public class DialogMaterialMenu extends BaseDialog {
Context context;
public static TextView waitToApplay;
public static TextView latestApplay;
public static TextView sort;
public DialogMaterialMenu(Context context) {
super(context);
this.context=ICMApplication.mContext;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dialog_layout_material_dialog);
initView();
}
private void initView() {
addClickCancel();
waitToApplay = (TextView) findViewById(R.id.waitToApplay);
latestApplay = (TextView) findViewById(R.id.latestApplay);
sort = (TextView) findViewById(R.id.sort);
}
/**
* 如果有监听事件,注册控件的监听事件,或者设置控件显示的内容;
*/
}
转载请注明原文地址: https://ju.6miu.com/read-33326.html