package com.lzf.easyfloat import android.app.Dialog import android.content.Context import android.view.Gravity import android.view.View import android.view.ViewGroup import android.view.WindowManager import android.widget.ImageView import android.widget.TextView open class WindowDIalog(var mcontext: Context,var mListener : OnDialogListener) : Dialog(mcontext!!, R.style.WindowBottomDialog) { private var btn_vertical_sure : TextView?= null private var img_close : ImageView?= null init { setContentView(R.layout.window_dialog_common) setCancelable(false) initView() setListener() } fun setListener() { img_close?.setOnClickListener { this@WindowDIalog.dismiss() if (mListener != null) { mListener?.onClickImgCancle() } } btn_vertical_sure?.setOnClickListener { this@WindowDIalog.dismiss() if (mListener != null) { mListener?.onClickSure(null) } } } private fun initView() { btn_vertical_sure = findViewById(R.id.btn_vertical_sure) img_close = findViewById(R.id.img_close) } override fun onStart() { super.onStart() window?.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN) window?.decorView?.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION or View.SYSTEM_UI_FLAG_FULLSCREEN or View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY) } override fun show() { this.window?.setFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE) this.window?.clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE) var window = this.window window?.decorView?.setPadding(0, 0, 0, 0) window?.attributes?.height = ViewGroup.LayoutParams.WRAP_CONTENT window?.attributes?.width = ViewGroup.LayoutParams.MATCH_PARENT window?.setBackgroundDrawable(mcontext?.resources?.getDrawable(R.color.transparent)) window?.setGravity(Gravity.CENTER) super.show() } interface OnDialogListener{ fun onClickImgCancle() fun onClickCancle() fun onClickSure(position : Int?) } }