1. 程式人生 > >基於NGUI的富文字解決方案模型

基於NGUI的富文字解決方案模型

今天富文字功能已經按既定的計劃動手施工了,
目前已經將解決思路的模型給搭建出來了,
今天就說說我寫的那些程式碼,全權當做一個使用說明

程式碼檔案組織
類檢視
程式碼中主要的類有三個

  • RichLabelMgr
  • RichLabelCtrl
  • RichLabelComponent
  • 其中:
    RichLabelMgr 是管理 RichLabelCtrl 的類,也是是入口。
    裡面有個CreateNewRichLab方法

    @rich_txt   全部的富文字字串
    @mnt        建立的父物體
    @size       大小
    @Alignment  對齊方式
    @call_back  事件點選方式
    RichLabelMgr.CreateNewRichLab(string rich_txt, Transform mnt, Vector2 size, NGUIText.Alignment alignment, OnClickCallBack call_back)
    
    // 昨天在說這個方法的時候,漏了一個引數,那就是mnt,這個引數還是有必要的,因為需要建立物體,所以這個引數就是父物體
    // 目前能想到的,需要使用到的引數都在這裡,建立的時候就需要指定這些引數
    // 結果是返回一個Ctrl,不給Ctrl怎麼讓其他人重複呼叫創建出來的富文字呢?所以給個控制器給呼叫者
    

    RichLabelCtrl 是控制器,可以理解為MVC的Controller
    主要功能是管理整個富文字的清理,回收,重新整理等工作,當然回撥事件也會由這個控制器去管理

    RichLabelComponent 這個類是所有元素的基礎類的父類,各個基礎類都要重寫這個父類的解析方法。
    RichLabel
    RichSprite
    RichSpriteAnim
    RichTexture

    這些都是 RichLabelComponent 的子類。