Kotlin通用对话框不显示
无法显示通用对话框。我是Kotlin中的新手。有没有人遇到这个问题?
我努力了
class CommonStaticClass { fun showCommonPopUp(activity: Context, msg: String,drawable: Int): Dialog { val metrics = activity.resources.displayMetrics val dev_width = metrics.widthPixels val dev_height = metrics.heightPixels val dialogCommon = Dialog(activity) dialogCommon.window.setBackgroundDrawable(ColorDrawable(android.graphics.Color.TRANSPARENT)) dialogCommon.window.requestFeature(Window.FEATURE_NO_TITLE) dialogCommon.setContentView(R.layout.dialog_alert) dialogCommon.setCancelable(false) dialogCommon.setCanceledOnTouchOutside(false) dialogCommon.window.setLayout((dev_width* 85)/ 100, (dev_height* 25) / 100) val tv_headerObj = dialogCommon.findViewById(R.id.txt_header) as TextView val img_smileOBJ = dialogCommon.findViewById(R.id.img_smile) as ImageView img_smileOBJ.setImageResource(drawable) tv_headerObj.text = msg + "" dialogCommon.show() return dialogCommon } }
Kotlin类
val commonDIALOG= commonDialogOBJ!!.showCommonPopUp(getActivity()!!,"Your session has expired. Please log in",R.drawable.ic_sad) commonDIALOG.show()
我已经宣布
private var commonDialogOBJ : CommonStaticClass? = null commonDialogOBJ = CommonStaticClass()
它为我工作。
以我的xml为例
然后
val commonDialogOBJ: CommonStaticClass by lazy { CommonStaticClass() } commonDialogOBJ.showCommonPopUp(this, "Hello world");
而你的class级代码是完美的。 但是一切都将是透明的