1、Canvas中的Sorting Order属性,这个属性决定了它们在渲染时的顺序
2、Awake 是一个在游戏对象被实例化时首先调用的方法。它在对象被加载到场景中但在启用之前调用。
适合在这个阶段进行初始化工作,如查找其他组件、获取引用、设置初始数值等。
由于在对象加载时调用,即使对象处于非活动状态(SetActive(false)),Awake 方法也会被执行。
就是说即使物体被禁用,Awake 方法也会被调用
3、onClick.AddListener为组件事件添加监听器
UI按钮的点击事件通常通过其onClick(无参数)、
onValueChanged(有参数)属性访问,将监听器函数作为参数传递给AddListener方法来实现的。例如:
Find<Button>("startBtn").onClick.AddListener(onStartGameBtn); (
onStartGameBtn无参数)
Find<Toggle>("bg/IsOpnSound").onValueChanged.AddListener(onIsStopBtn); (onIsStopBtn有参数)
4、Slider控件允许用户可以通过鼠标来在预先确定的范围调节数值
Unity内置的Slider主要有3部分,一个是最底层的Background,然后是Fill(进度),然后就是Handle(圆点)
注意:Handle可以去除,其并不是必须的。去掉之后的调节我们可以通过代码来控制滑动条的移动,可用于作进度条或血条。
5、Toggle组件允许玩家通过点击或拖动来切换一个选项的状态。这种开关按钮在设置菜单、选项选择、功能激活等场景中非常常见
6、dontdestroyonload 确保gameobject一定是根游戏对象 在处理全局控制的时候有用。
而物体所在的游戏场景又可以重复进入的时候,游戏物体就会在每次进入场景的时候创建一次,甚至可以无限创建下去,这样的处理明显不妥。针对性的解决方案:
方案1:在每次调用DontDestroyOnLoad的时候,都去判断场景中是否有对应的物体,如果没有再去创建