| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- using UnityEngine.Events;
- namespace JCUnityLib.UI
- {
- public class ValidateJigsawView : MonoBehaviour
- {
- ValidateJigsaw _validateJigsaw;
- ValidateJigsawDragBar _validateJigsawDragBar;
- public UnityAction onQuit;
- public UnityAction onComplete;
- void Start()
- {
- _validateJigsaw = GetComponentInChildren<ValidateJigsaw>();
- _validateJigsawDragBar = GetComponentInChildren<ValidateJigsawDragBar>();
- _validateJigsaw.InitRandomPosition();
- _validateJigsawDragBar.onDrag += (v) => _validateJigsaw.SetCurrentPositionByPercent(v);
- _validateJigsawDragBar.onEndDrag += (v) => {
- _validateJigsaw.SetCurrentPositionByPercent(v);
- if (_validateJigsaw.IsFit())
- {
- _validateJigsawDragBar.enabled = false;
- transform.Find("Frame/MaskValidateOK").gameObject.SetActive(true);
- StartCoroutine(DelayClose());
- }
- };
- }
- public void OnClick_Close()
- {
- Destroy(gameObject);
- onQuit?.Invoke();
- }
- IEnumerator DelayClose()
- {
- yield return new WaitForSeconds(1f);
- Destroy(gameObject);
- onComplete?.Invoke();
- }
- public void SetTextLabel(string text)
- {
- transform.Find("Frame/Label").GetComponent<Text>().text = text;
- }
- public void SetTextTip(string text)
- {
- transform.Find("Frame/Tip").GetComponent<Text>().text = text;
- }
- public void SetTextOK(string text)
- {
- transform.Find("Frame/MaskValidateOK/Text").GetComponent<Text>().text = text;
- }
- }
- }
|