UIDragDetector

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

La instancia UIDragDetector facilita y alienta la interacción con elementos de interfaz de usuario 2D en una experiencia, como deslizadores y giradores.Las características clave incluyen:

  • Coloca un UIDragDetector bajo cualquier instancia GuiObject para hacerla arrastrable a través de todos los inputs sin una sola línea de código.

  • Elige entre varias opciones DragStyle , define cómo responde el objeto a la movilidad a través de ResponseStyle , y aplica opcionalmente límites de eje, movimiento o bordes de arrastre.

  • Los scripts pueden responder a la manipulación de objetos arrastrados para impulsar respuestas lógicas, como ajustar configuraciones.

  • UIDragDetectors trabaja en Studio mientras tengas no usando las herramientas Seleccionar , Mover , Escalar o Rotar , ni ciertas herramientas de plugin o del editor de Studio de UI .

Resumen

Propiedades

Métodos

Eventos

Propiedades

ActivatedCursorIcon

ContentId
Leer paralelo

Establece el icono del cursor para mostrar cuando el mouse está activado sobre el padre de este UIDragDetector .Si esta propiedad se deja en blanco, el detector usará el icono predeterminado.

Para cambiar el icono del cursor activado, establece esta propiedad en el ID de activo de la imagen que te gustaría usar.

Leer paralelo

Determina el comportamiento de contención del objeto de interfaz de usuario arrastrado cuando se establece el BoundingUI del detector. Vea Enum.UIDragDetectorBoundingBehavior para detalles sobre el comportamiento de cada configuración.

BoundingUI

Leer paralelo

Cuando se establece, la instancia UIDragDetector no permitirá que los límites del padre GuiObject se arrastren fuera de los límites de la instancia BoundingUI .

Tenga en cuenta que si una parte del padre GuiObject está fuera de los límites de BoundingUI , la posición de entrada inicial al arrastrar y su posición relativa durante el arrastre se usará para la detección de vínculos hasta que toda la entidad arrastrada esté dentro de los límites, después de lo cual el objeto se limitará dentro de los límites.

CursorIcon

ContentId
Leer paralelo

Establece el icono del cursor para mostrar cuando el mouse se desplaza sobre el padre de este UIDragDetector .Si esta propiedad se deja en blanco, el detector usará el icono predeterminado.

Para cambiar el icono del cursor, establece esta propiedad en el ID de activo de la imagen que te gustaría usar.

DragAxis

Leer paralelo

Vector2 valor que define el eje de movimiento para el objeto arrastrado cuando DragStyle se establece en Enum.UIDragDetectorDragStyle.TranslateLine.El eje se define en el espacio local del UIDragDetector a menos que se defina ReferenceUIInstance, en cuyo caso el eje se define en el espacio local de esa instancia.

Leer paralelo

Solo se aplica si se registra una función de arrastrado personalizada a través de SetDragStyleFunction() o AddConstraintFunction() .Establece el paradigma que define la relatividad de las entradas/salidas de la función registrada.

Por ejemplo, devolver un de una función registrada con esta propiedad establecida a moverá el padre del detector a en el destinado , mientras que devolver el mismo con esta propiedad establecida a moverá el padre del detector a por en el destinado .

DragRotation

Leer paralelo

La rotación realizada por el arrastre actual.Este valor se define en grados con respecto al espacio local del UIDragDetector a menos que se defina ReferenceUIInstance , en cuyo caso la rotación se define en el espacio local de esa instancia y desde su eje positivo X .

Esta propiedad se puede cambiar mientras no hay ningún arrastre activo para girar el objeto arrastrado.

Leer paralelo

Solo se aplica si se registra una función de arrastrado personalizada a través de SetDragStyleFunction() o AddConstraintFunction() .Establece el paradigma que define el espacio de las entradas/salidas de la función registrada.

Por ejemplo, si el padre del detector GuiObject es un hijo de un padre GuiObject que se ha girado:

  • Devolver un desde una función registrada con esta propiedad establecida en moverá al padre del detector a la derecha por 1 píxel en el espacio local afectado por la rotación de su padre.

  • Devolver un desde una función registrada con esta propiedad establecida en moverá al padre del detector a la derecha por 1 píxel en el espacio del .

Leer paralelo

El paradigma utilizado para generar la propuesta de movimiento, dado un flujo de vectores de posición de entrada. Vea Enum.UIDragDetectorDragStyle para las opciones.

DragUDim2

Leer paralelo

La traducción realizada por el arrastre actual expresada en un valor UDim2 .La traducción se realiza a través de Offset o Scale cambios de valor dependiendo del valor DragRelativity , y es relativa al espacio local del detector a menos que se defina un ReferenceUIInstance .

Esta propiedad se puede cambiar mientras no hay un arrastre activo para mover el objeto arrastrado.

Enabled

Leer paralelo

Si true , la UIDragDetector responde a la entrada del usuario; si false , no lo hace.

MaxDragAngle

Leer paralelo

Si esta propiedad es mayor que MinDragAngle, la rotación se limitará dentro del rango de MinDragAngle y MaxDragAngle.Los valores positivos impiden la rotación en sentido horario mientras que los valores negativos impiden la rotación en sentido contrario.

Esto no es una restricción; simplemente impide que el detector realice intentos de generar movimiento para permanecer dentro de los límites.Vea AddConstraintFunction() para agregar una restricción personalizada a un arrastrado.

Solo es relevante si DragStyle es Enum.UIDragDetectorDragStyle.Rotate.

MaxDragTranslation

Leer paralelo

Si los valores correspondientes de Offset y/o Scale son mayores que los de MinDragTranslation en todas las dimensiones, la traducción lineal/plana se limitará dentro del rango de MinDragTranslation y MaxDragTranslation .

Esto no es una restricción; simplemente impide que el detector realice intentos de generar movimiento para permanecer dentro de los límites.Vea AddConstraintFunction() para agregar una restricción personalizada a un arrastrado.

Solo es relevante si DragStyle es Enum.UIDragDetectorDragStyle.TranslateLine o Enum.UIDragDetectorDragStyle.TranslatePlane .

MinDragAngle

Leer paralelo

Si esta propiedad es menos de MaxDragAngle , la rotación se limitará dentro del rango de MinDragAngle y MaxDragAngle .Los valores positivos impiden la rotación en sentido horario mientras que los valores negativos impiden la rotación en sentido contrario.

Esto no es una restricción; simplemente impide que el detector realice intentos de generar movimiento para permanecer dentro de los límites.Vea AddConstraintFunction() para agregar una restricción personalizada a un arrastrado.

Solo es relevante si DragStyle es Enum.UIDragDetectorDragStyle.Rotate.

MinDragTranslation

Leer paralelo

Si los valores correspondientes de Offset y/o Scale son inferiores a los de MaxDragTranslation en todas las dimensiones, la traducción lineal/plana se limitará dentro del rango de MinDragTranslation y MaxDragTranslation .

Esto no es una restricción; simplemente impide que el detector realice intentos de generar movimiento para permanecer dentro de los límites.Vea AddConstraintFunction() para agregar una restricción personalizada a un arrastrado.

Solo es relevante si DragStyle es Enum.UIDragDetectorDragStyle.TranslateLine o Enum.UIDragDetectorDragStyle.TranslatePlane .

ReferenceUIInstance

Leer paralelo

Una instancia GuiObject que su espacio local y posición de centro absoluto es el espacio de referencia y el origen para el detector.Establecer esta referencia afecta propiedades como DragUDim2 , DragRotation y el comportamiento de DragAxis .

Leer paralelo

Una vez que se haya calculado y potencialmente restringido la moción propuesta, se usa este paradigma para determinar cómo mover (o no mover) al GuiObject afectado por el UIDragDetector .Vea Enum.UIDragDetectorResponseStyle para opciones.

SelectionModeDragSpeed

Leer paralelo

Define la velocidad máxima de arrastre para la traducción como una combinación de y del primer ancestro o al que pertenece.Este valor debe ser positivo y cualquier valor por debajo de 0 se clamará a 0 .

SelectionModeRotateSpeed

Leer paralelo

Define el ángulo máximo por segundo en el que el UIDragDetector puede girar.Este valor debe ser positivo y cualquier valor por debajo de 0 se clamará a 0 .

UIDragSpeedAxisMapping

Leer paralelo

Enum.UIDragSpeedAxisMapping valor que determina las velocidades de arrastre de la dimensión X / Y .

Métodos

AddConstraintFunction

Añade una función para modificar o limitar el movimiento propuesto.La función toma una entrada UDim2 (posición) y flota (rotación) de propuesta moción y devuelve una entrada UDim2 y flota de modificada o no modificada moción.Puedes agregar múltiples funciones que se llamarán en orden por priority , pasando los resultados en una cadena.

La entrada se expresa en el espacio definido por la propiedad DragSpace, ya sea como un delta o la posición/rotación final deseada basada en la propiedad DragRelativity.La salida debe expresarse en el mismo espacio y relatividad, a menos que se anule al devolver un valor de retorno especificado Enum.UIDragDetectorDragRelativity y Enum.UIDragDetectorDragSpace como los terceros y cuartos valores de devolución.

Para eliminar una función de restricción agregada, llame a Disconnect() en el objeto de conexión devuelto.

Parámetros

priority: number

El orden de prioridad para las funciones agregadas a través de este método. Los valores más altos tienen precedencia sobre los valores más bajos.

Valor predeterminado: ""
function: function

Función para modificar o limitar la propuesta de movimiento.Esta función recibe la entrada UDim2 e ingresa la moción propuesta **** y la flotante de UDim2 o la flotante de modificada o no modificada.Puede devolver opcionalmente un Enum.UIDragDetectorDragRelativity y Enum.UIDragDetectorDragSpace como los terceros y cuartos valores de devolución como anulaciones de salida.

Valor predeterminado: ""

Devuelve

Usa este objeto de conexión para eliminar la función de restricción.

GetReferencePosition

Cuando no se establece ningún ReferenceUIInstance, esta función devuelve la posición de UDim2 del padre inmediato del objeto arrastrado GuiObject (si existe uno), o la posición de UDim2 del objeto arrastrado.

Cuando se establece un ReferenceUIInstance, esta función devuelve la posición UDim2 de esa instancia de referencia.


Devuelve

UDim2 posición del elemento de referencia de la actual arrastrada.

GetReferenceRotation

Cuando no se establece ningún ReferenceUIInstance, esta función devuelve la rotación del padre inmediato del objeto arrastrado GuiObject (si existe uno), o la rotación del objeto arrastrado.

Cuando se establece un ReferenceUIInstance, esta función devuelve la rotación de esa instancia de referencia.


Devuelve

Rotación del elemento de referencia de la actual arrastrada.

SetDragStyleFunction

()

Pasa una función para usar si y solo si DragStyle está configurado como Enum.UIDragDetectorDragStyle.Scriptable.La función dada recibe la posición de entrada del espacio de pantalla de la señal con el tipo Vector2 , y devuelve una posición UDim2 (posición) y un flotante (rotación) que contiene el movimiento deseado del arrastre.El espacio de los valores de devolución y la relatividad del movimiento se determinan por las propiedades DragSpace y DragRelativity, a menos que se anulen al devolver un valor de devolución específico Enum.UIDragDetectorDragRelativity y Enum.UIDragDetectorDragSpace como los terceros y cuartos valores de devolución.

Si la función devuelve nil, el objeto no se moverá.Esto es útil si el script aún no ha recopilado toda la información que necesita para dar la respuesta correcta, o en casos temporales en los que quieres que el objeto se quede donde está.

Parámetros

function: function

Función para monitorear señales DragContinue de alerta.Esta función recibe la posición de entrada del espacio de pantalla de la señal y devuelve un UDim2 y flotante que contiene el movimiento deseado del arrastre en el espacio deseado y la relatividad.Si esta función devuelve nil , el objeto no se moverá.

Valor predeterminado: ""

Devuelve

()

Eventos

DragContinue

Se enciende cuando un usuario continúa arrastrando el elemento de la interfaz de usuario después de que DragStart se haya iniciado.

Parámetros

inputPosition: Vector2

Vector2 representando la posición de entrada actual.


DragEnd

Se activa cuando un usuario deja de arrastrar el elemento de la interfaz de usuario.

Parámetros

inputPosition: Vector2

Vector2 representando la posición de entrada actual.


DragStart

Se activa cuando un usuario comienza a arrastrar el elemento de la interfaz de usuario.

Parámetros

inputPosition: Vector2

Vector2 representando la posición de entrada actual.