以下对代码进行了注释,完整工程 在Asset Store 搜索 Unity UI Simple
- 包含对动画的设置、状态判断 保存等
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections;
using System.Collections.Generic;
public class PanelManager : MonoBehaviour {
/// <summary>
/// 初始要打开的面板
/// </summary>
public Animator initiallyOpen;
/// <summary>
/// Open 的hash
/// </summary>
private int m_OpenParameterId;
/// <summary>
/// 用于保存当前的面板
/// </summary>
private Animator m_Open;
/// <summary>
/// 用于保存当前选中的面板,打开的新面板关闭时 可以回到该位置
/// </summary>
private GameObject m_PreviouslySelected;
/// <summary>
/// 两个bool 的Code
/// </summary>
const string k_OpenTransitionName = "Open";
const string k_ClosedStateName = "Closed";
public void OnEnable()
{
m_OpenPar