Android DialogFragment使用记录

1、简介

主要用于记录DialogFragment的部分使用,便于以后查看。

2、setStyle

1、为DialogFragment设置style的时机是在onCreate()

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setStyle(DialogFragment.STYLE_NO_TITLE,R.style.Theme_AppCompat_Dialog);
    }

几个属性:
DialogFragment.STYLE_NORMAL:基础Dialog
DialogFragment.STYLE_NO_TITLE:没有标题
DialogFragment.STYLE_NO_FRAME:Dialog无边框
DialogFragment.STYLE_NO_INPUT:无法输入,不接受输入的焦点,触摸无效。但是放EditText仍然可以编辑,存在疑问。

2、自定义Dialog适用的属性


3、设置窗口大小和位置

    @Override
    public void onStart() {
        super.onStart();
        WindowManager.LayoutParams layoutParams = getDialog().getWindow().getAttributes();
        layoutParams.gravity = Gravity.CENTER; // 设置Dialog的位置
        layoutParams.width = WindowManager.LayoutParams.MATCH_PARENT;
        layoutParams.height = Device.dip2px(getContext(),200);
        getDialog().getWindow().setAttributes(layoutParams);
    }

4、设置Dialog关闭回调事件

    @Override
    public void onDismiss(DialogInterface dialog) {
        super.onDismiss(dialog);
        if (dismissListener != null) dismissListener.onDismiss(dialog);
        
    }
    
    private OnDismissListener dismissListener;
    
    public interface OnDismissListener {
        void onDismiss(DialogInterface dialogInterface);
    }

你可能感兴趣的:(Android DialogFragment使用记录)