UGUI Butten按钮私有调用方法进行界面跳转,保存原有的场景事件,再跳转场景时,依旧可以使用。

UI是每一款游戏都必备的内容,特别是登录注册,页面加载等,以及游戏界面内的UI都是必不可缺的一个因素。这里讲解一下如何不通过公开拖拉的方式,去实现页面跳转,显示隐藏。拖拉的方式如果出现UI过多以及,UI界面被意外删除的情况下,拖拉的方式就会出现弊端,导致无法发现自己的错误,而私有调用的方式就比拖拉的方式更好解决这个问题。

如果需要把原先的UI或者游戏对象,我们可以通过DontDestroyOnLoad()这个方法去保存我们想要保存的游戏对象等。

注:事件系统一定得保存!!!!不然UI里面的所有对象都会失效,这里的游戏场景跳转属于同步跳转,相对于把之前的游戏场景内容销毁。连同事件系统(以上都是个人看点及想法)。

public GameObject eventSystem;
public Image img;
private float speed=1.5f; 
private Button A, B;

void Start()
    {
        //保存原有的场景游戏对象,保存事件系统
        DontDestroyOnLoad(this.gameObject);
        DontDestroyOnLoad(eventSystem);
        //找到butten按钮
        A = GameObject.Find("goA").GetComponent<Button>();
        B = GameObject.Find("goB").GetComponent<Button>();
        //添加监听事件
        A.onClick.AddListener(getA);
        B.onClick.AddListener(getB);
    }

    void getA()
    {
        //刷新重赋渐变颜色
        img.color= Color.black;
        //场景跳转
        SceneManager.LoadScene(1);
    }
    void getB()
    {
        img.color= Color.black;
        SceneManager.LoadScene(2);
    }

     void Update()
    {
        //背景板的渐变色
        img.color = Color.Lerp(img.color, Color.clear, Time.deltaTime * speed);
    }

 

这里开启游戏之后,黑布就会渐变消失,然后就会出现一个机器人和一个小女孩

 

点击按钮goA时,会跳转到场景A中,出现一个正方体。而最开始的场景中的按钮goA和按钮goB会一起留下来

 注:这里红色圈圈必须保存下来,不让俩个按钮会失效,这就是DontDestroyOnLoad(eventSystem)方法的作用

 点击按钮goB时,会跳转到场景B中,出现一个球。

 这里可以一直通过俩个按钮进行场景的切换,每一次都会有渐变的效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值