unity3d中的ngui的一些筆記

來源:互聯網
上載者:User

標籤:create   widget   

一、 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類變數,用於擷取滑鼠或觸摸的位置。


本文出自 “電腦” 部落格,請務必保留此出處http://5152481.blog.51cto.com/5142481/1532739

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.