全面探索UGUI源碼之UIBehaviour

UIBehaviour爲所有UI組件的基類,繼承於MonoBehavior,擁有Unity相同的生命週期。

UI組件都是直接或者間接繼承UIBehaviour這個抽象類。

除了Awake,OnEnable,Start,OnDisable,OnDestroy外,含有一些與ui變化相關的虛方法

//當關聯的RectTransform維度發生變化時調用
protected virtual void OnRectTransformDimensionsChange()
{}
//當變更父級之前調用
protected virtual void OnBeforeTransformParentChanged()
{}
//當變更父級之後調用
protected virtual void OnTransformParentChanged()
{}
//當應用動畫屬性時調用
protected virtual void OnDidApplyAnimationProperties()
{}
//當更換了畫布組後調用
protected virtual void OnCanvasGroupChanged()
{}
//當畫布狀態變化時調用
protected virtual void OnCanvasHierarchyChanged()
{}
//      
public bool IsDestroyed()
{
    return this == null;
}

每個組件的父類說明:

Text-->MaskableGraphic-->Graphic-->UIBehaviour

Image-->MaskableGraphic-->Graphic-->UIBehaviour

RawImage-->MaskableGraphic-->Graphic-->UIBehaviour

Button-->Selectable-->UIBehaviour

Toggle-->Selectable-->UIBehaviour

Slider-->Selectable-->UIBehaviour

ScrollBar-->Selectable-->UIBehaviour

DropDown-->Selectable-->UIBehaviour

InputFiled-->Selectable-->UIBehaviour

EventSystem-->UIBehaviour

特殊的

ScrollView由幾個組件組成,關鍵ScrollRect-->UIBehaviour

Panel是使用了內置ui圖片Background的Image

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章