Unity 通用弹出框
因为项目中要经常用到一些提示框,弹出框之类的通用组建,所以写了一个,方便以后使用
效果展示:
预设物结构:
代码展示:
using UnityEngine;
using UnityEngine.UI;public delegate void OnCancel();
public delegate void OnSure();public enum OpenMessageType
{Sure,SureandCancle
}public class DialogInfo
{public string warnInfo;public string sureBtnInfo = "确定";public string cancleBtnInfo = "取消";public OnCancel onCancel;public OnSure onSure;public OpenMessageType openType;
}public class MessageBoxUI
{private GameObject messageBox = null;private Button m_sureBtn;private Button m_cancelBtn;private Text m_infoTxt;private Text sureBtnTxt;private Text cancleBtnTxt;private DialogInfo m_dialogInfo;public MessageBoxUI(object val){messageBox = GameObject.Instantiate(Resources.Load("CommonUI/MessageBox")) as GameObject;messageBox.transform.parent = GameUtils.Instance().UiRoot.transform;messageBox.transform.localPosition = Vector3.zero;messageBox.transform.localScale = Vector3.one;m_sureBtn = messageBox.transform.Find("BtnGroup/SureBtn").GetComponent<Button>();m_cancelBtn = messageBox.transform.Find("BtnGroup/CancleBtn").GetComponent<Button>();m_infoTxt = messageBox.transform.Find("Info").GetComponent<Text>();sureBtnTxt = messageBox.transform.Find("BtnGroup/SureBtn/Text").GetComponent<Text>();cancleBtnTxt = messageBox.transform.Find("BtnGroup/CancleBtn/Text").GetComponent<Text>();m_dialogInfo = (DialogInfo)val;if (m_dialogInfo.openType == OpenMessageType.Sure){m_cancelBtn.gameObject.SetActive(false);}if (!string.IsNullOrEmpty(m_dialogInfo.sureBtnInfo)){sureBtnTxt.text = m_dialogInfo.sureBtnInfo;}if (!string.IsNullOrEmpty(m_dialogInfo.cancleBtnInfo)){cancleBtnTxt.text = m_dialogInfo.cancleBtnInfo;}m_infoTxt.text = m_dialogInfo.warnInfo;m_sureBtn.onClick.AddListener(OnSureClick);m_cancelBtn.onClick.AddListener(OnCancelClick);}private void OnSureClick(){if (m_dialogInfo.onSure != null)m_dialogInfo.onSure();ClosePanel();}private void OnCancelClick(){if (m_dialogInfo.onCancel != null)m_dialogInfo.onCancel();ClosePanel();}private void ClosePanel(){GameObject.Destroy(messageBox);}
}
调用实例:
Unity 通用弹出框相关推荐
- 所有网站都通用的自定义弹出框alert
A.所有网站都通用的自定义弹出框.A </body> <script>var Alert = function(data){//没有数据则返回if(!data){return; ...
- Android仿IOS封装通用的弹出框Dialog和底部弹出列表选择框 仿美团顶部条件筛选框 附自定义ViewGroup
弹出框 背景 提示与询问弹出框 实现 使用 列表选择框 实现 使用 顶部条件筛选框 实现 自定义ViewGroup 使用 总结 背景 鉴于Android提供的默认弹出框很一般,IOS的弹出框样式还不错 ...
- React Native 弹出框
RN为我们提供了一个跨平台通用的Modal组件,我们可以用它来实现一个弹出框的视图. 先上效果图: 代码如下: /*** Created by gyg on 2017/5/11.* 自定义弹出框组件* ...
- android h5弹窗,Android嵌套html5页面中alert 弹出框问题
最近项目中遇到一个头疼的问题,那就是在安卓里嵌套html5的时候发现alert弹出框出现了问题 那就是弹出的时候会出现串 来自http://xxxxx 网页的提示 然后下面出来具体的弹出信息,还有更奇 ...
- IOS8中SWIFT 弹出框的显示
弹出框不管是在网页端,还是在手机APP端,都是常用的控件.在网页中实现个简单的弹出框只需要调用alert,在IOS中,也不是那么复杂,也是容易使用的. 我先用xcode6创建一个名为iOS8Swift ...
- QTP的那些事---页面弹出框的处理,页面等待加载的处理
处理方法:先判断父类对象是否存在,如果存在,判断相关的static文本对象是否存在,如果存在,则点击弹出框中的按钮即可: 例如如下的代码: 设置循环判断dialog对象是否存在,如果存在,就去点击相关 ...
- php ajax弹出框传值,PHP_Yii2.0 模态弹出框+ajax提交表单,如题 我们使用模态弹出框+ajax - phpStudy...
Yii2.0 模态弹出框+ajax提交表单 如题 我们使用模态弹出框+ajax提交表单 首先我们把index视图的create按钮添加data-toggle 和 data-target. 代码如下: ...
- Bootstrap方法为页面添加一个弹出框
<!DOCTYPE html> <html> <head><meta charset="utf-8"> <title>B ...
- 基于layer mobile手机端弹出框,询问框(PC端推荐layer和artDialog:http://download.csdn.net/download/cometwo/9437895)...
layer mobile是为移动设备(手机.平板等webkit内核浏览器/webview)量身定做的弹层支撑,采用Native JavaScript编写,完全独立于PC版的layer,您需要按照场景选 ...
最新文章
- 【MySQL】ubuntu16.04安装mysql,然后源码编译Qt5.12.4版本的libqsqlmysql.so
- 模型在gpu上反而速度变慢了_Tensorflow1.13.1+CUDA10.0+CuDNN7.4在GPU上训练模型
- 怎么给电脑设密码_怎么给电脑中重要的文件夹设置密码?
- JButton 圆角_昆明圆角灯箱哪家好
- nginx配置ajax请求跨域
- 终止运行线程的注意事项
- linux看请求报文发送的ip,Linux C 实现最简单的ICMP_ECHO请求报文发送
- Java集合的框架和实现类
- mysql索引级别快慢_面试小点-MySQL 的两种索引方法如何提高查询速度
- Android NetworkLocationProvider and GeocodeProvider
- 将url编码数据转换为简单字符串
- 19年1月尔雅移动互联网时代的信息安全与防护考试答案(96分)
- 深究C语言4.链表和结构体
- 六千档最强万金油?华硕无畏Pro15 2022锐龙版笔记本体验
- xcode14 Command Swift Driver Compilation Requirements emitted errors but did not ret
- coreseek 词库 导入搜狗词库
- maya 中arnold渲染vector置换贴图方法
- 四川泸州市高职计算机学校,四川泸州职高学校有哪些?
- CSAPP_Chapter1
- 计算机专业前沿算法,CNCC2018 | 研究经典计算机算法已经过时了吗?