NGUI學習筆記匯總


NGUI學習筆記匯總,適用於NGUI2.x,NGUI3.x

一.NGUI的直接用法

1. Attach a Collider:表示為NGUI的某些物體添加碰撞器,如果界面是用NGUI做的,只能這樣添加。(注:用Component添加無效)。

2. Attach an Anchor:表示為該物體添加了UIAnchor腳本,作用是避免像素偏移的問題

3. Attach UIStretch:表示為該物體添加了UIStretch腳本,提供縮放功能

4. Make Pixel Perfect:表示自動為你調整Transform的尺寸

5. Create a Panel:表示創建一個面,相當於一個容器,里面的Button,Label,CheckBox控件全部包含在Panel里面

6. Create a Widget:表示創建一個窗口小部件,比如Button,Label,Sprite等

7. Create a New UI:表示創建一個新的UI界面

8. Font Maker:創建字體

9. Atlas Maker:創建圖集

二.Component/NGUI /Examples

1.PanWithMouse,表示你賦予的該物體會根據鼠標的變換而移動(漂浮的感覺)

2.LookAtTarget,表示該物體朝向你的目標物體(Target)

3.LoadLevelOnClick,表示點擊按鈕后加載到另外一個場景,在LevelName寫上你所要加載的場景名即可

4.Spin,旋轉

5.SpinWithMouse,跟着鼠標旋轉

6.TypewriterEffect,作用於標簽,打字風格

7.Chat Input,將輸入框里面的內容提交到文本框里面去

三.Component/NGUI/Interaction

1.Button

A:UIButton:鼠標放到按鈕上,改變目標物體的顏色

B:UIButtonScale:鼠標放到按鈕上,目標物體變大或縮小,在Hover下調節x,y,z的比例

C:UIButtonOffset:鼠標放到按鈕上,目標物體挪動位置

D:UIButtonSound:鼠標點擊按鈕,發出聲音

E:UIButtonActivate:鼠標點擊按鈕后,目標物體由禁用狀態到啟用狀態(觸發該物體)

F:UIButtonColor:鼠標移動至按鈕后,目標物體變顏色

G:UIButtonRotation:鼠標移動至按鈕后,目標物體旋轉一定的度數,在Hover下調節x,y,z旋轉的度數

H:UIButtonTween:鼠標點擊了按鈕后,目標物體產生變換,必須給目標物體添加Tween組件里面的變換(例:transform變換,position變換,Alpha變換等等),並在開 始enable目標物體的變換,因為此變換是在點擊鼠標后才產生,要不然就會在開始運行游戲的時候,它就產生變換了

I:UIButtonPlayAnimation:鼠標點擊按鈕后,目標動畫播放(必須為目標物體添加Animation)

J:UIButton Message:傳遞消息,寫一個公共函數,告訴你所要傳遞消息的內容,將此腳本放到你的目標物體上,然后寫上你所要傳遞消息的函數名字

2.CheckBox

A:UICheckBox:用於多選框的選擇與取消

B:UICheckBoxControlledObject:如果取消這個多選框的選擇,那么目標物體以及所有子物體全部被禁用

C:UICheckBoxControlledComponent:若添加此腳本到CheckBox中,如果選擇了該多選按鈕,那么此腳本的Target將被顯示,如果沒有選擇該多選按鈕,那么此腳本的Target將被隱藏

3.Drag

A:UIDragCamera:為某個物體添加該組件,然后為Camera添加UIDraggableCamera組件,表示該攝像機允許被拖拽,然后將此攝像機放到UIDragCamera的目標攝像機下,拖拽該物體,攝像機的位置就會改變

B:UIDraggableCamera:表示該攝像機是允許被拖拽的

C:UIDraggablePanel:表示該面(容器)是允許被拖拽的

D:UIDragObject:拖動該物體,被允許拖拽的物體會被拖拽,在此被允許拖動的物體必須放到目標物體之下

E:UIDragPanelContents:表示該面的所有組件也是允許被拖拽的

4.其他

A:UIForward Events:表示從對象到另一個轉發事件(還需要詳細了解)

B:UIGrid:表示為該物體添加網格,在該物體下可以包含許多的Item,在Arrangemwnt中可以選擇豎直或者水平排列,Cell Width和Cell Height代表每個單元格的寬度和高度

C:UICenterOnChild:常用於拖拽事件中,給Panel添加UIDraggablePanel腳本,然后給你想要拖拽的物體添加UIDragObject或者是UIDragPanelContents,然后給網格根目錄添加UICenterOnChild,不管如何拖動容器里面的物體,網格始終保持水平或垂直居中狀態

D:UIInputValidator:用於輸入框中(Input),給輸入框添加此腳本后,在Logic有多種選擇,None代表沒驗證,任何字符都可以輸入(漢語除外),Integer表示只能輸入整數,不能輸入英文以及各種特殊字符,Double表示只能輸入浮點數,Alphanumeric表示什么英文和數字和特殊字符都可以輸入,Username表示可以輸入英文、數字,一些特殊字符(小數點除外),Name表示只能輸入英文和特殊字符(小數點除外)

E:UIPanelAlpha:可用於任何控件,添加此腳本給物體,在Alpha中可以調節參數,0表示全透明,0-1表示越來越不透明,1以上的數字表示完全不透明

F:UIPopupList:用於下拉列表框(PopupList),通過NGUI創建PopupList控件時,就添加了此腳本,在Options中可以添加下拉列表框的子項

G:UIScrollBar:用於滾動條,Value表示當前滾動條的位置,Size表示一個滾動條的一個單元大小,Alpha表示滾動條的透明度,Direction可以選擇滾動條是垂直狀態還是水平狀態

H:UISlider:用於滑動框,Value表示此滑動框被填充的比例,Direction表示可以選擇滑動框是垂直的還是水平的

I:UISoundVolume:用於Slider控件中……

J:UITable:添加表格,Columns表示此表格的列數,Down表示一列里面的控件從上往下排列,Up表示一列里面的控件從下往上排列,Padding表示各個控件的距離

四.Component/NGUI /Tween

1.Spring Position:表示變換物體的位置,Target是目標位置,物體會從開始的位置,移動到目標位置處

2.Tween Alpha:表示物體的透明度從某一個值到另一個值,From表示開始的值,To表示之后的值

3.Tween Color:表示物體的顏色從某一個值到另一個值,From表示開始的顏色,To表示之后的顏色

4.Tween Position:表示物體的坐標從一個位置到另一個位置,From表示開始的位置,To表示之后的位置

5.Tween Rotation:表示物體從一個角度到另一個角度的變換,From表示開始的角度,To表示之后的角度

6.Tween Scale:表示物體的大小從某一個值到另一個值的變換,From表示開始的大小,To表示之后的大小

7.Tween Transform:表示物體的Transform變換,From表示開始的物體位置,To表示之后的物體位置

五.創建控件NGUI/Create a Widget

A:創建標簽:Label

B:創建下拉列表框:Popup List

C:創建進度條:Progress Bar

D:創建滑動條:Slider

E:創建輸入框:Input

F:創建滾動條:Scroll Bar

G:創建按鈕:Button

H:創建多選框:CheckBox

I:創建精靈

    精靈也就是從一張大的圖集中獲取一個小的圖片

    Sprite:一般的精靈

    Sliced Sprite:帶有固定邊框的精靈

    Tiled Sprite:縮放重復填充整個區域的精靈(例如鐵絲網)

    Filled Sprite:每個都會有一個單獨的參數來控制那些可見的,常用於滾動條和進度條

J:創建輸入框:Input

六.NGUI事件系統

NGUI事件函數可以寫入NGUI控件腳本,或者帶有碰撞器的物體(被帶有UICamera組件的相機渲染)的腳本。

常用事件

void OnHover (bool isOver):鼠標懸停或移出時觸發。懸停時傳入true,移出時傳入false。

void OnPress (bool isDown)::鼠標或觸摸按下或松開時觸發,按下時傳入true,松開時傳入false。

void OnClick():鼠標或觸摸單擊(按下並釋放)時觸發。

void OnDoubleClick () :雙擊(雙擊時間間隔小於0.25秒)時觸發。

void OnSelect (bool selected):類似單擊,區別在於選中一次之后再選中將不再觸發OnSelect事件,除非期間選擇了其他控件。
void OnDrag (Vector2 delta):鼠標或觸摸按下並移動時觸發。delta為傳入的位移。

void OnInput (string text):只用於輸入控件,每次輸入完成后觸發,text傳入本次輸入的信息,而非輸入控件中的文本信息。
void OnTooltip (bool show):鼠標懸停一段時間或移開時觸發,懸停時傳入true,移開時傳入false。

void OnScroll (float delta):鼠標中鍵滾動時觸發,delta為傳入的滾動增量。

七.常用相關變量

UICamera.currentTouchID  UICamera類變量,用於區分鼠標按下的鍵位,-1為左鍵,-2為右鍵,-3為中鍵

UICamera.lastHit      UICamera類變量,RaycastHit類型。用於獲取被觸發的物體。

UICamera.lastTouchPosition    UICamera類變量,用於獲取鼠標或觸摸的位置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM