本文永久地址:http://www.omuying.com/article/60.aspx,【文章转载请注明出处!】
消息提示框,大家都并不陌生,他们的主要作用是给予用户提示,用 NGUI 来做消息提示框并不难,只是有些地方需要额外注意。
先来搭建测试环境,如图:
因为消息提示框只有用户触发之后都会消失,所以需要设置背景遮罩的属性,用来避免显示消息提示框的时候,用户还可以操作其他的行为,如图:
这儿需要注意的是设置按钮的 Anchors 属性,我们希望当面板显示多行文字的时候背景变大,但是按钮的整体位置不会变,变的只是与上边框的距离,所以我们需要设置,如图:
然后再设置背景框 Background 的 Anchors 属性,背景框的大小只会随着文本框的变化而变化,所以我们要把 Anchors 的 Target 设置为文本框(lblNote),如图:
面板设计好了,下面是代码部分,代码部分没有要注意的,简单、实用就好,消息提示框的相关代码如下(MessageBoxEnum.cs):
01using UnityEngine;
02using System.Collections;
03
04public class MessageBoxEnum
05{
06public delegate void OnReceiveMessageBoxResult(MessageBoxEnum.Result result);
07
08public enum Style
09{
10Ok,
11OkAndCancel
12}
13
14public enum Result
15{
16Ok,
17Cancel
18}
19}
MessageBoxPanel.cs
01using UnityEngine;
02using System.Collections;
03
04public class MessageBoxP