-
Notifications
You must be signed in to change notification settings - Fork 1
UIDrag
Moon Antonio edited this page Nov 8, 2017
·
6 revisions
UIDrag es un control para arrastras un objeto o una serie de objetos de la interfaz.
Situado en Scripts/Componentes
<>
using System;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
using UnityEngine.EventSystems;
Hereda de ->
-
UIBehaviour
-
IEventSystemHandler
-
IBeginDragHandler
-
IDragHandler
-
IEndDragHandler
public RectTransform target; // Objetivo del arrastre
public bool horizontal = true; // Se puede mover en horizontal
public bool vertical = true; // Se puede mover en vertical
public bool inercia = true; // Tiene incercia
private float dampeningRate = 9f; // Ratio de damp
public bool isConstrainConCanvas = false; // Determina si se quiere constrain dentro del canvas
public bool isConstrainDrag = true; // Determina si que quiere constrain cuando se arrastra
public bool isConstrainInercia = true; // Determina si se quiere constrain con la inercia
private Canvas canvas; // Canvas de la escena
private RectTransform canvasRectTransform; // Canvas del Rect Transform
private Vector2 velocidad; // Velocidad actual del objeto
private bool isDragging; // Determina si se esta arrastrando
private Vector2 posicionPuntoInicial = Vector2.zero; // Posicion inicial
private Vector2 posicionPuntoTarget = Vector2.zero; // Posicion del objetivo
[Serializable] public class DragInitEvent : UnityEvent<BaseEventData> { }
[Serializable] public class DragCompletadoEvent : UnityEvent<BaseEventData> { }
[Serializable] public class DragEvent : UnityEvent<BaseEventData> { }
protected override void Awake(){} // Cargador de UIDrag
protected virtual void LateUpdate()// Actualizacion final de UIDrag
public void StopMovimiento(){} // Detiene la inercia
public override bool IsActive(){} // Determina si el objeto esta activo
public void OnBeginDrag(PointerEventData data){} // Cuando empieza el arrastre
public void OnEndDrag(PointerEventData data){} // Cuando termina el arrastre
public void OnDrag(PointerEventData data){} // Cuando se esta arrastrando
protected override void OnTransformParentChanged(){} // Cuando se cambia el transform del padre
protected Vector3 Dampen(ref Vector2 velocidad, float fuerza, float delta){} // Dampen
protected Vector2 ClampToCanvas(Vector2 Posicion){} // Clamps al canvas
protected Vector2 ClampToScreen(Vector2 posicion){} // Clamps a la pantalla