描述手指触控的阶段。
TouchPhase 是一个枚举类型,包含可能的指触状态。这些状态表示手指在最近一帧更新中可以执行的每个操作。由于设备会跟踪触控的“生命周期”,因此可以在触控发生的那一帧报告触控的开始和结束以及之间的移动。
//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; } } } }
Began | 手指触碰屏幕。 |
Moved | 手指在屏幕上移动。 |
Stationary | 手指触碰屏幕但没有移动。 |
Ended | 手指从屏幕上抬起。这是触控的最后阶段。 |
Canceled | 系统取消了触控的跟踪。 |
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.