blob: fa24cff4736f631b534c064573d99404d5818612 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
namespace UnityEngine.EventSystems
{
public abstract class UIBehaviour : MonoBehaviour
{
#region MonoBehaviour共有生命周期
protected virtual void Awake()
{}
protected virtual void OnEnable()
{}
protected virtual void Start()
{}
protected virtual void OnDisable()
{}
protected virtual void OnDestroy()
{}
// 父节点(包括非直接父节点的祖先节点)在hierachy中的父子层级改变前调用
protected virtual void OnBeforeTransformParentChanged()
{ }
// 父节点(包括非直接父节点的祖先节点)在hierachy中的父子层级改变完调用
protected virtual void OnTransformParentChanged()
{ }
#endregion
public virtual bool IsActive()
{
return isActiveAndEnabled;
}
#if UNITY_EDITOR
// 组件值在inspector中被修改时调用
protected virtual void OnValidate()
{}
// inspector中右键reset调用
protected virtual void Reset()
{}
#endif
#region UGUI特有回调函数
// 当gRectTransform大小改变(不包括位置)的时候回调。且如果子物体由于锚点的设置也会导致
// 大小改变时也会调用子物体的这个回调。如果子物体大小不会因此改变,那么不会触发这个回调
protected virtual void OnRectTransformDimensionsChange()
{}
// 用animation clip修此脚本属性值的时候触发。可以用于修正动画结果
protected virtual void OnDidApplyAnimationProperties()
{}
// 祖先节点CanvasGroup参数变化或enable\disable或canvasGroup下面的canvas的层级变化
protected virtual void OnCanvasGroupChanged()
{}
// 祖先节点Canvas enable\disable或OverrideSorting状态改变
protected virtual void OnCanvasHierarchyChanged()
{}
#endregion
public bool IsDestroyed()
{
// Workaround for Unity native side of the object
// having been destroyed but accessing via interface
// won't call the overloaded ==
return this == null;
}
}
}
|