感觉一般控制UI的显示隐藏都是通过SetActive方法去实现的
但是随着逻辑越来越复杂,需要调用SetActive的地方会越来越多,有的时候还需要添加减少UI,难免会出现错误
比如说有X个按钮需要让Y个UI显示或者隐藏,过了几天又增加了Z个按钮然后去修改先前写一些逻辑等等...
后来我通过设置标志位去解决这个问题 在Update函数里去做判断
比如
void Update()
{
if(某个标志) {ui1.SetActive(true);ui2.SetActive(false);ui3......}
else {ui1.SetActive(false);ui2.SetActive(true);ui3......}
}
就是有点类似于状态的转换 到达某一种状态之后 批量显示隐藏某些UI
但是我觉得这样子做的话 会不会对性能造成影响呢,因为是在Update里面每一帧去判断的
另外 我看了几个UI框架 感觉UI框架的做法优点主要是体现在大界面切换(也许是我理解的不够),减少相互调用
而我现在困惑的是单个界面中,那些相对来说比较小的UI,比如一个按钮一张图片等,如何避免这种问题?
各位朋友是怎么做的呢?希望指教一下
但是随着逻辑越来越复杂,需要调用SetActive的地方会越来越多,有的时候还需要添加减少UI,难免会出现错误
比如说有X个按钮需要让Y个UI显示或者隐藏,过了几天又增加了Z个按钮然后去修改先前写一些逻辑等等...
后来我通过设置标志位去解决这个问题 在Update函数里去做判断
比如
void Update()
{
if(某个标志) {ui1.SetActive(true);ui2.SetActive(false);ui3......}
else {ui1.SetActive(false);ui2.SetActive(true);ui3......}
}
就是有点类似于状态的转换 到达某一种状态之后 批量显示隐藏某些UI
但是我觉得这样子做的话 会不会对性能造成影响呢,因为是在Update里面每一帧去判断的
另外 我看了几个UI框架 感觉UI框架的做法优点主要是体现在大界面切换(也许是我理解的不够),减少相互调用
而我现在困惑的是单个界面中,那些相对来说比较小的UI,比如一个按钮一张图片等,如何避免这种问题?
各位朋友是怎么做的呢?希望指教一下