Files
tianrunCRM/Assets/CoolapeFrame/Scripts/ui/public/CLPanelMask4Panel.cs

96 lines
2.3 KiB
C#
Raw Normal View History

2020-07-04 14:41:25 +08:00
/*
********************************************************************************
*Copyright(C),coolae.net
*Author: chenbin
*Version: 2.0
*Date: 2017-01-09
*Description:
*Others:
*History:
*********************************************************************************
*/
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
namespace Coolape
{
public class CLPanelMask4Panel : CLPanelLua
{
public TweenAlpha tweenAlpha;
public UISprite sprite;
public UILabel label;
object finishCallback;
bool isShowing = false;
public static CLPanelMask4Panel self;
public List<string> defautSpriteNameList = new List<string>();
public CLPanelMask4Panel()
{
self = this;
}
public override void init ()
{
tweenAlpha.ResetToBeginning ();
base.init ();
}
public void _show(object callback, List<string> list)
{
NGUITools.SetActive(gameObject, true);
List<string> tmplist = defautSpriteNameList;
if (list != null && list.Count > 0) {
tmplist = list;
}
if (tmplist != null && tmplist.Count > 0) {
int index = NumEx.NextInt(0, tmplist.Count);
CLUIUtl.setSpriteFit(sprite, tmplist [index]);
}
finishCallback = callback;
// NGUITools.SetActive (label.gameObject, false);
tweenAlpha.Play(true);
CLPanelBase p = CLPanelManager.topPanel;
panel.depth = p == null ? 3000 : p.panel.depth + CLPanelManager.depthOffset + 100;
panel.renderQueue = UIPanel.RenderQueue.StartAt;
// 设置startingRenderQueue是为了可以在ui中使用粒子效果注意在粒子中要绑定CLUIParticle角本
panel.startingRenderQueue = CLPanelManager.Const_RenderQueue + this.panel.depth;
}
public void _hide(object callback)
{
finishCallback = callback;
tweenAlpha.Play(false);
}
public void onTweenFinish(GameObject go)
{
isShowing = !isShowing;
if (isShowing) {
NGUITools.SetActive(label.gameObject, true);
} else {
NGUITools.SetActive(gameObject, false);
}
Invoke ("doCallback", 0.1f);
}
public void doCallback()
{
Utl.doCallback(finishCallback, this);
}
public static void show(object callback, List<string> list)
{
self._show(callback, list);
}
public static void hide(object callback)
{
self._hide(callback);
}
}
}