132 lines
3.2 KiB
C#
132 lines
3.2 KiB
C#
|
using UnityEngine;
|
|||
|
using System.Collections;
|
|||
|
using GCGame.Table;
|
|||
|
using System.Collections.Generic;
|
|||
|
using Module.Log;
|
|||
|
using UnityEngine.UI;
|
|||
|
|
|||
|
// 每日首充根UI
|
|||
|
public class DailyFirstRechargeRoot : MarketingUIBaseCS
|
|||
|
{
|
|||
|
#region Single
|
|||
|
|
|||
|
private static DailyFirstRechargeRoot _instance;
|
|||
|
public static DailyFirstRechargeRoot Instance
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
if (_instance != null)
|
|||
|
{
|
|||
|
return _instance;
|
|||
|
}
|
|||
|
|
|||
|
LogModule.ErrorLog("DailyFirstRechargeRoot._instance = null !");
|
|||
|
return null;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void Awake()
|
|||
|
{
|
|||
|
if (_instance == null)
|
|||
|
{
|
|||
|
_instance = this;
|
|||
|
}
|
|||
|
|
|||
|
// 关闭按钮监听
|
|||
|
if(behindMask != null)
|
|||
|
{
|
|||
|
behindMask._BackClick.AddListener(Close);
|
|||
|
}
|
|||
|
|
|||
|
// 菜单按钮监听
|
|||
|
if(menuBtns != null && menuBtns.Count > 0)
|
|||
|
{
|
|||
|
foreach(MarketingWinMenuItemCS menu in menuBtns)
|
|||
|
{
|
|||
|
menu._ClickEvent = OnMenuSelect;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
#endregion
|
|||
|
|
|||
|
public List<MarketingWinMenuItemCS> menuBtns;
|
|||
|
public UIBackRayBehind behindMask;
|
|||
|
|
|||
|
private int curPageID = -1;
|
|||
|
public int CurPageID
|
|||
|
{
|
|||
|
get { return curPageID; }
|
|||
|
}
|
|||
|
|
|||
|
private void OnEnable()
|
|||
|
{
|
|||
|
AskInfo();
|
|||
|
}
|
|||
|
|
|||
|
private void OnDisable()
|
|||
|
{
|
|||
|
if(MarketingActsRoot.Instance() != null)
|
|||
|
{
|
|||
|
MarketingActsRoot.Instance().ClearShowingWin(_ActID);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public void Close()
|
|||
|
{
|
|||
|
gameObject.SetActive(false);
|
|||
|
}
|
|||
|
|
|||
|
public void AskInfo()
|
|||
|
{
|
|||
|
MarketingActsReq req = new MarketingActsReq();
|
|||
|
req.actType = this._ActID;
|
|||
|
|
|||
|
req.SendMsg();
|
|||
|
}
|
|||
|
|
|||
|
private void InitMenuItem(List<MarketingActState> actsList)
|
|||
|
{
|
|||
|
for(int i = 0; i < menuBtns.Count; i++)
|
|||
|
{
|
|||
|
if(i < actsList.Count)
|
|||
|
{
|
|||
|
Hashtable param = new Hashtable();
|
|||
|
param.Add("InitObj", actsList[i]);
|
|||
|
menuBtns[i].Show(param);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
menuBtns[i].gameObject.SetActive(false);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public void OnMenuSelect(object obj)
|
|||
|
{
|
|||
|
MarketingActState selectedMenu = obj as MarketingActState;
|
|||
|
if(selectedMenu != null)
|
|||
|
{
|
|||
|
if(MarketingActsRoot.Instance()._ShowingWin.ContainsKey(selectedMenu.actID))
|
|||
|
{
|
|||
|
MarketingActsRoot.Instance()._ShowingWin[selectedMenu.actID].SetActive(false);
|
|||
|
MarketingActsRoot.Instance().ClearShowingWin(selectedMenu.actID);
|
|||
|
}
|
|||
|
|
|||
|
Tab_ActInfoClient tab = TableManager.GetActInfoClientByID(selectedMenu.actID, 0);
|
|||
|
Hashtable param = new Hashtable();
|
|||
|
param.Add("ActState", selectedMenu);
|
|||
|
|
|||
|
LuaUIManager.Instance.ShowLuaUIAsChild(tab.UIPath, this.gameObject, MarketingActsRoot.Instance().LoadUICallBack, param, true);
|
|||
|
curPageID = selectedMenu.actID;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
protected override void MarketingActRetInner(MarketingActsRet marketActsRet)
|
|||
|
{
|
|||
|
if (marketActsRet != null)
|
|||
|
{
|
|||
|
InitMenuItem(marketActsRet.actIDState);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|