UI拖曳器 實例可以與 2D 用戶界面元素在體驗中進行互動,例如滑動器和旋轉器。鑰匙功能包括:
將 UIDragDetector 放在任何 GuiObject 實例下,以便能夠在所有輸入無需單條代碼的情況下拖曳。
從多個 DragStyle 選項中選擇,定義對象以何種方式應對運動以及ResponseStyle 的定義,並且可選擇拖動界限或拖動邊界。
腳本可以回應拖曳對象的操作來駕駛論理回應,例如調整設定。
UIDragDetectors 在 Studio 工作,直到你不是使用 選擇 、 移動 、0> 調整0> 或 3> 旋轉3> 工具,或某些插件或 Studio 的 UIDragDetectors6> 編輯器工具。
概要
屬性
設定鼠標啟用時顯示的游標圖示。 UIDragDetector 的父級。
決定拖曳介面對象的位置界限行為,當偵測器的 BoundingUI 設定。
定義拖曳邊界的實例 GuiObject 。
將鼠標指针設為顯示當鼠標指向此 UIDragDetector 的父親時顯示。
拖軸 UIDragDetector 對象時, DragStyle 將設置為 Enum.UIDragDetectorDragStyle.TranslateLine。
設定定義自訂拖曳函數的相對論的輸入/輸出。
由當前拖曳執行的旋轉。
設定定義自訂拖曳函數輸入/輸出空間的參數。
用於生成所提出的動作的原則。
目前拖曳的翻譯以 UDim2 值表示。
UserDragDetector 是否回應使用者輸入。
以 MinDragAngle 為標準,阻止探測器嘗試生成旋轉運動。
以 MinDragTranslation 和 Class.UI拖曳器.拖曳器|拖曳器 的協作來阻止探測器嘗試生成直線/平面運動。
以下 MaxDragAngle 與 Class.UI拖曳角度|最大拖曳角度 相同,但以阻止探測器的嘗試生成旋轉運動。
以 MaxDragTranslation 和 Class.UID拖曳器.MaxDragTranslation 為基礎,阻止探測器嘗試生成直線/平面運動。
一個 GuiObject 實例,其本地空間和絕對中心位置是探測器的引用區域和原始位置。
用於定義所提出的動作的回應的原則。
翻譯的最大拖動速度。
UIDragDetector 每秒鐘可以旋轉的角度上限。
Enum.UIDragSpeedAxisMapping 值,決定 X / Y 尺寸拖動速度。
方法
添加一個函數來修改或限制所提供的動作。
返回目前拖曳的引用位置 UDim2。
返回目前拖曳元素的參考旋轉元素。
如果 DragStyle 設為 Enum.UIDragDetectorDragStyle.Scriptable ,則傳送一個函數使用。
活動
發生在使用者拖曳 UI 元素後, DragStart 已初始化後。
使用者停止拖曳 UI 元素時會發生火焰。
發生時,使用者開始拖曳 UI 元素時。
屬性
ActivatedCursorIcon
設定鼠標啟用時顯示的游標圖示。如果此屬性為空,則探測器會使用預設圖示。
若要變更啟用的指针圖示,將此屬性設置為您想要使用的圖像的資產 ID。
BoundingBehavior
決定拖曳 UI 對象的綁定行為,當探測器的 BoundingUI 設定。參閱 Enum.UIDragDetectorBoundingBehavior 了解每個設定的行為。
BoundingUI
設定時,UIDragDetector 實例將不允許父親 GuiObject 的限制拖曳到 界面控制器 實個體、實例的外部。
注意,如果 GuiObject 的一部分位於 界面限制 之外,在拖曳開始時和其相對位置在拖曳過程中使用的初始輸入位置將被用於偵測綁定直到拖曳對象內,並在拖曳對象內後,對象將被限制在內部。
CursorIcon
設定鼠標暫停在此 UIDragDetector 的上方時顯示的曲標圖示。如果此屬性為空,探測器將使用預設圖示。
若要變更鼠標圖示,請將此屬性設為使用者想要使用的圖像的資產 ID。
DragAxis
Vector2 值,定義拖曳對象的移動軸,當 DragStyle 設為 Enum.UIDragDetectorDragStyle.TranslateLine 時。 軸是在 0> Class
DragRotation
當前拖曳執行的旋轉。這個值是以相對於本地空間的 UIDragDetector 的度數定義,除非 ReferenceUIInstance 被定義,在此情況下旋轉是在該例子和正向 X 軸的本地空間定義的。
此屬性可以在沒有啟用拖曳對物件旋轉時變更。
DragSpace
只適用於已經註冊過自訂拖曳功能通過 SetDragStyleFunction() 或 AddConstraintFunction() 。設定並定義空間的注冊功能輸入/輸出。
舉例來說,如果偵測器的父親 GuiObject 是一個旋轉的父親 GuiObject 的子:
將 UDim2.fromOffset(1, 0) 從註冊的函數返回,將此屬性設為 Enum.UIDragDetectorDragSpace.Parent 的親,將探測器的父親移動到本次父元素親的旋轉影響範圍內的本地空間。
將 UDim2.fromOffset(1, 0) 從註冊的函數 Enum.UIDragDetectorDragSpace.LayerCollector 返回到 GuiObject 的兒童專用探測器,將探測器的父親 1> Class.GuiObject1> 移動到空間中的 4> Class
MaxDragAngle
如果此屬性大於 MinDragAngle ,旋轉將在 MinDragAngle 和 MaxDragAngle 範圍內受到抵禦。正向值會阻止時鐘旋轉,負向值會阻止反時鐘旋轉。
這不是限制式;它僅會阻止偵測器嘗試在生成運動以便保持在限制內。請參閱 AddConstraintFunction() 以將自訂限制添加到拖動。
只有相關 if DragStyle 是 Enum.UIDragDetectorDragStyle.Rotate 。
MaxDragTranslation
如果 Offset 和/或 Scale 值大於 MinDragTranslation 的所有尺寸,則將在 1> Class.UIDrag
這不是限制式;它僅會阻止偵測器嘗試在生成運動以便保持在限制內。請參閱 AddConstraintFunction() 以將自訂限制添加到拖動。
只有相關 if DragStyle 是 Enum.UIDragDetectorDragStyle.TranslateLine 或 Enum.UIDragDetectorDragStyle.TranslatePlane 。
MinDragAngle
如果此屬性小於 MaxDragAngle ,旋轉將在 Class.UIDragDetector.MinDragAngle|MinDragAngle 和 Class.UI拖動器.MaxDragAngle 的範圍內縮放。正向值會阻止時鐘旋轉,負向值會阻止反時鐘旋轉。
這不是限制式;它僅會阻止偵測器嘗試在生成運動以便保持在限制內。請參閱 AddConstraintFunction() 以將自訂限制添加到拖動。
只有相關 if DragStyle 是 Enum.UIDragDetectorDragStyle.Rotate 。
MinDragTranslation
如果 Offset 和/或 Scale 值小於 MaxDragTranslation 在所有尺寸上,則平行/平面翻譯將
這不是限制式;它僅會阻止偵測器嘗試在生成運動以便保持在限制內。請參閱 AddConstraintFunction() 以將自訂限制添加到拖動。
只有相關 if DragStyle 是 Enum.UIDragDetectorDragStyle.TranslateLine 或 Enum.UIDragDetectorDragStyle.TranslatePlane 。
ReferenceUIInstance
一個 GuiObject 實例的本地空間和相對中心位置是探測器的參考空間和起始位置。設置此參考會影響如下屬性,例如 DragUDim2、DragRotation 和 1> Class
方法
AddConstraintFunction
添加一個功能來修改或限制所提供的動作。功能接受輸入 UDim2 (位置) 和浮動 (旋轉) 的所提供動作和返回 Datatype.UDim2 和浮動的 UDim2 或未修改動作。你可以添加多個功能,
輸入是由 DragSpace 屬性定義的空間來表示,或作為 Delta 或最終目標位置/旋轉位置的最終位置,取決於 DragRelativity 屬
要移除新增的限制函數,請在返回的連接對物件上呼叫 Disconnect()。
參數
這個方法添加的功能的優先權。更高的值取得優先權。
返回
使用此連接對象來移除限制函數。
GetReferencePosition
當沒有 ReferenceUIInstance 設定時,此功能將返回拖曳對物件的即時父親 UDim2 (如果存在) 或拖曳對物件的即時父親 GuiObject (如果存在) 的位置。
當 ReferenceUIInstance 設設定時,此功能會返回該參考實個體、實例的 UDim2 位置。
返回
GetReferenceRotation
當沒有 ReferenceUIInstance 設設定時,此函數會返回拖曳對物件的即時父 GuiObject (如果存在) 或者拖曳對物件的旋轉。
當 ReferenceUIInstance 設設定時,此函數會返回該引用範個體、實例的旋轉。
返回
旋轉目前拖動元素的參考元素。
SetDragStyleFunction
如果 DragStyle 設為 Enum.UIDragDetectorDragStyle.Scriptable ,則輸入的輸入位置會取得
如果函數返回 nil ,對象將不會移動。這很有用,如果腳本尚未收集到正確的答案,或在暫時情況下,您想要讓對象保留在原位。
參數
監視DragContinue信號的功能。這個功能接收單一的輸入位置,並返回UDim2和漂浮在指定位置和重力的拖動。如果此功能返回nil,對象將不會移動。