.1.场景跳转不销毁对象 DontDestroyOnLoad(gameobject);
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;/*
*创建者:
*创建时间:
*描述:
*版本:
*/
public class _3_7 : MonoBehaviour
{public GameObject es;//事件系统public GameObject canvas;//幕布public Button btnA, btnB;// Start is called before the first frame updatevoid Start(){DontDestroyOnLoad(es);//场景跳转UI不销毁,幕布及事件系统DontDestroyOnLoad(gameObject);btnA=canvas.transform.GetChild(2).GetChild(0).GetComponent<Button>();btnB=canvas.transform.GetChild(2).GetChild(1).GetComponent<Button>();btnA.onClick.AddListener(Btn_A);//按钮点击事件通过点击方法添加按钮事件监听,免拖脚本挂载游戏对象,选择对应的方法btnB.onClick.AddListener(Btn_B);//添加事件监听AddListener方法参数为委托类型,需要注意委托通过泛型指定的参数类型}public void Btn_A(){SceneManager.LoadScene(1);}public void Btn_B(){SceneManager.LoadScene(0);}
}
2.复选框按钮 Toggle
是否选中 isOn
可以通过脚本的方式限制为单选框
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;/*
*创建者:
*创建时间:
*描述:
*版本:
*/
public class _3_7_1 : MonoBehaviour
{public Toggle man, woman;// Start is called before the first frame updatevoid Start(){man.onValueChanged.AddListener(Man);//复选框按钮通过值更新方法添加事件监听; woman.onValueChanged.AddListener(Woman);}// Update is called once per framevoid Update(){}void Man(bool b)//复选框的委托参数类型为布尔值isOn{if (b)//man是否选中{woman.isOn = false;}else if (woman.isOn == false) //woman未被选中 man的复选框属性isOn依然为true{man.isOn = true;}}void Woman(bool b){if (b){man.isOn = false;}else if (man.isOn == false){woman.isOn = true;}}
}
3.九宫格切片
将图片更改为Sprite类型,通过图片精灵编辑,适用于有边框的图片
4.滑动条 Slider
通过值更新OnValueChanged方法添加事件监听,适用于音量大小的调节
5.滚动条 Scrollbar
通过值更新OnValueChanged方法添加事件监听,不同于Slider的点在于Numbers Of Steps,可以设置可以滑动的节点有多少个,例如:2个节点可拖动的只有min,max两个值,适用于长游戏界面显示,类似于分页