標籤: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