Unity小知识点学习
使用代码控制 Image图片层级渲染 顺序
大家都知道,在Unity中,Image和Image之间有一个渲染顺序
就像下面这两个Image,要先渲染上面的Image,然后在渲染下面的Image(1)
这样的话,就是先渲染的在下面被遮挡,后渲染的在上面被显示
我们可以手动在编辑器设置好要显示的图片位置和顺序,也可以通过代码来控制
代码如下:
image1.transform.SetAsLastSibling();//最后渲染,执行后放到最上层 //image1.transform.SetAsFirstSibling();//最先渲染,执行后放到最下层 //image1.transform.SetSiblingIndex(10);//自定义层级显示,越接近0 越先渲染,数越大越后渲染。为负数时与SetAsFirstSibling效果相同
我这里通过代码控制Image最后渲染,点击鼠标左键的时候执行!
效果如下本来Image(1)是正常的渲染顺序,显示在上面,当我们点击鼠标左键执行了控制渲染顺序的方法
让Image最后渲染时,Image就会显示在Image(1)的上面了!
示例代码如下:
public class Demo1 : MonoBehaviour { public Image image1; private void Update() { if (Input.GetMouseButtonDown(0)) { image1.transform.SetAsLastSibling();//最后渲染,执行后放到最上层 //image1.transform.SetAsFirstSibling();//最先渲染,执行后放到最下层 //image1.transform.SetSiblingIndex(10);//自定义层级显示,越接近0 越先渲染,数越大越后渲染。为负数时与SetAsFirstSibling效果相同 } } }