// 显示确认框,有确定和取消,默认显示半透明背景,并且点击不可取消界面 public static void ShowConfirm(string text, string textTitle, System.Action okCallback, System.Action cancelCallback = null, bool clickToHide = false, bool showBackground = true) { MsgBoxParam param = new MsgBoxParam(); param.text = text; param.textTitle = textTitle; param.okCallback = okCallback; param.cancelCallback = cancelCallback; param.clickToHide = clickToHide; param.showBackground = showBackground; param.showCancelButton = true; ShowMsgBox(param); }
private void OnShowMsgBox(MsgBoxParam param) { // 标题 if (string.IsNullOrEmpty(param.textTitle)) { _txtTitle.gameObject.SetActive(false); } else { _txtTitle.gameObject.SetActive(true); _txtTitle.text = param.textTitle; } _txtText.text = param.text; // 按钮文字 if (!string.IsNullOrEmpty(param.textOK)) { _txtOK.text = param.textOK; } if (!string.IsNullOrEmpty(param.textCancel)) { _txtCancel.text = param.textCancel; } _btnOK.gameObject.SetActive(true); if (param.showCancelButton) { // 有确定和取消 _btnCancel.gameObject.SetActive(true); _btnOK.transform.localPosition = _okPosition; } else { // 只有一个ok按钮 _btnCancel.gameObject.SetActive(false); Vector3 pos = _btnOK.transform.localPosition; pos.x = 0; _btnOK.transform.localPosition = pos; } _onClickOKCallback = param.okCallback; _okClickCancelCallback = param.cancelCallback; if (param.clickToHide) { BackgroundEvent = ClickEvent.CLICK_TO_CLOSE; } else { BackgroundEvent = ClickEvent.INTERCEPT_EVENT; } if (!param.showBackground) { SetBackgroundOpacity(0); } else { SetBackgroundOpacity(BackgroundColor.a); } Show(); PlayOpenAnimation(); }
public override void OnBindData(params object[] param) { _param = (MsgBoxParam)param[0]; }
public static void ShowMsgBox(MsgBoxParam param) { UIManager.Instance.OpenWindow <UIMsgBoxView>(param); }