由于NGUI、包括UGUI的控件alpha是属性,而控制属性更新需要设置刷新状态为dirty。
所以添加脚本来控制刷新。
也可以添加NGUI的脚本AnimatedAlpha用动画来控制其alpha值。
如果没有该脚本,可以自行实现:
NGUI
[ExecuteInEditMode]
public class AnimatedAlpha : MonoBehaviour
{
[Range(0f, 1f)]
public float alpha = 1f;
UIWidget mWidget;
UIPanel mPanel;
void OnEnable ()
{
mWidget = GetComponent<UIWidget>();
mPanel = GetComponent<UIPanel>();
LateUpdate();
}
void LateUpdate ()
{
if (mWidget != null) mWidget.alpha = alpha;
if (mPanel != null) mPanel.alpha = alpha;
}
}