1、首先对两个界面之间加上切换动画(这里用简单的,直接从NGUI里面Tween一个动画给UI界面)
X2
2、然后添加以下脚本
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class StartMenuController : MonoBehaviour {
public static StartMenuController _instence; //使用单例模式
public TweenScale startpanelTween; //获取两个动画
public TweenScale loginpanelTween;
void Awake(){
_instance = this;
}
public void OnUsernameClick()
{
//输入账号进行登录
//隐藏当前面板,显示登录面板
startpanelTween.PlayForward(); //运行动画
StartCoroutine(HidePanel(startpanelTween.gameObject)); //开启协程,隐藏面板
loginpanelTween.gameObject.SetActive(true);
loginpanelTween.PlayForward();
}
//使用协程隐藏面板
//执行关闭或者跳转动画以后,隐藏当前面板,但又不可以直接隐藏,需要设置时间值
IEnumerator HidePanel(GameObject go)
{
yield return new WaitForSeconds(0.4f);
go.SetActive(false);
}
}
3、将有动画的两个UI界面拖到unity里的脚本上
然后对切换按钮注册点击事件,选择上面的方法名
然后就完成界面切换了
按钮Attach 一个Box collider,然后Attach UI Button Script
事件交互要求必须要有Collider,这里按钮加上了box collider