ShanxiKnowledgeBase/SXElectricity Marketing 2.0/Assets/Zion/Scripts/YL/Copytext.cs

47 lines
1.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class Copytext : MonoBehaviour,IPointerDownHandler, IPointerUpHandler
{
float pressedTime = 0; // 按下的时间
private bool isDown; // 是否按下
Coroutine coroutine;
public void OnPointerDown(PointerEventData eventData)
{
Debug.Log("TextCopyExtend Component is Down...");
isDown = true;
coroutine = StartCoroutine(CalculatePressedTime()); // 按下开携程
}
private IEnumerator CalculatePressedTime()
{
while (isDown) // 只有按下了才启动
{
yield return null;
pressedTime += Time.deltaTime;
if (pressedTime >= 0.5f) // 超过一秒
{
Debug.Log("复制文本");
// UIMgr.Instance.Notice(ConfigMgr.Instance.GetLanguage(400)); // 提示复制成功
GUIUtility.systemCopyBuffer = GetComponent<Text>().text; // 获取文本内容
isDown = false;
}
}
}
public void OnPointerUp(PointerEventData eventData)
{
Debug.Log("TextCopyExtend Component is Up...");
isDown = false;
pressedTime = 0;
if (coroutine != null)
{
StopCoroutine(CalculatePressedTime());
}
}
}