本章博主和大家一起讨论下Unity怎么实现类似安卓原生项目,点击安卓返回按钮实现返回到前一个页面的功能。
1、定义一个泛型用于响应安卓的返回按钮
public static List<GameObject> list;
public GameObject addPanel; //添加首页
2、在Start方法中将首页压入栈中
list = new List<GameObject>(5);
//将页面压入堆栈中
list.Add(addPanel);
3、在Update方法中实时监控安卓手机的返回按钮的触发情况
if (Input.GetKeyDown(KeyCode.Escape))
{
androidBack();
}
4、由一个页面跳转到另一个页面 将页面名称压入栈中
public static void androidNext(GameObject NextGO)
{
list.Add(NextGO);
NGUITools.SetActive(list[list.Count - 2], false);
NGUITools.SetActive(list[list.Count - 1], true);
}
5、安卓手机中在一个页面点击返回按钮时 将此刻的页面名称弹出堆栈
public static void androidBack()
{
if (list.Count > 1)
{
NGUITools.SetActive(list[list.Count - 1], false);
NGUITools.SetActive(list[list.Count - 2], true);
list.RemoveAt(list.Count - 1);
}
else
{
Application.LoadLevel(0);
list.RemoveAt(0);
}
}