Cambiar al Manual


Describe una fase de un toque táctil con el dedo.

TouchPhase is an enum type that contains the states of possible finger touches. The states represent each action the finger can take on the most recent frame update. Since a touch is tracked over its "lifetime" by the device, the start and end of a touch and movements in between can be reported on the frames they occur.

//Attach this script to an empty GameObject
//Create some UI Text by going to Create>UI>Text.
//Drag this GameObject into the Text field to the Inspector window of your GameObject.

using UnityEngine; using System.Collections; using UnityEngine.UI;

public class TouchPhaseExample : MonoBehaviour { public Vector2 startPos; public Vector2 direction;

public Text m_Text; string message;

void Update() { //Update the Text on the screen depending on current TouchPhase, and the current direction vector m_Text.text = "Touch : " + message + "in direction" + direction;

// Track a single touch as a direction control. if (Input.touchCount > 0) { Touch touch = Input.GetTouch(0);

// Handle finger movements based on TouchPhase switch (touch.phase) { //When a touch has first been detected, change the message and record the starting position case TouchPhase.Began: // Record initial touch position. startPos = touch.position; message = "Begun "; break;

//Determine if the touch is a moving touch case TouchPhase.Moved: // Determine direction by comparing the current touch position with the initial one direction = touch.position - startPos; message = "Moving "; break;

case TouchPhase.Ended: // Report that the touch has ended when it ends message = "Ending "; break; } } } }


BeganUn dedo ha tocado la pantalla.
MovedUn dedo se movió en la pantalla.
StationaryUn dedo está tocando la pantalla, pero no se ha movido.
EndedUn dedo fue alzado desde la pantalla. Esta es la fase final de un toque.
CanceledEl sistema cancelo el seguimiento para el toque.