本文实例为大家分享了unity自定义弹出框的具体方法,供大家参考,具体内容如下
一、弹出框的搭建
布局如图:Message为整个父物体,并且添加UiMessage代码。panel为遮罩。
MessageBox为整个提示框,Panel为标题,ok为确定按钮,cancel为取消按钮,retry为重试按钮,Text为提示框的文字。
注意大小写,后面代码会根据名称进行获取对应组建。
效果如下:
二、MessageBox代码
要说明的都在代码中注释了。仿照Windows的提示框功能,如果功能不足可自行添加。例如关闭按钮、显示图标等。
using System;
public enum DialogResult
{
Ok,
OKCancel,
RetryCancel,
YesNo,
YesNoCancel
}
public static class MessageBox
{
///
/// true表示模态框
///
public static bool type;
//三个委托,分别为三个按钮的点击运行事件
public static Action clickOk;
public static Action clickRetry;
public static Action clickCancel;
public static DialogResult dialogResult;
//标题
public static string headText;
//文本
public static string text;
//状态。用于显示或隐藏弹出框
public static bool state;
///
///重试按钮点击事件
///
public static void onClickRetry()
{
state = false;
clickRetry?.Invoke();
clickRetry = null;<