InputFiled中输入数值,text动态显示数值,当输入数值>text中数值,text中的数值动态递增;反之,动态递减。

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System;
/// <summary>
/// 在输入框输入数字,在现实文本中数值动态增加,可多次输入
/// InputFiled中输入数值,text动态显示数值,当输入数值>text中数值,text中的数值动态递增;反之,动态递减。
/// </summary>

public class T_DataSet : MonoBehaviour
{
    /// <summary>
    /// 输入框
    /// </summary>
    public InputField Ipf1;
    /// <summary>
    /// 显示文本
    /// </summary>
    public Text txt1;
    //public Text txt2;
    bool Check = false;
    [NonSerialized]
    public float minimum;
    [NonSerialized]
    public float maximum;
    static float t = 0.0f;
    string RecordTxt;
    void Start()
    {
        minimum = int.Parse(txt1.text);
        Ipf1.onEndEdit.AddListener(delegate
        {
            this.EndData(Ipf1.gameObject);
        });
    }
   
    void Update()
    {

    }
    IEnumerator Timer()
    {
        while (Check)
        {
            RecordTxt = Mathf.Lerp(minimum, maximum, t).ToString("0.0");
            t += 1f * Time.deltaTime;
            if (RecordTxt == maximum.ToString("0.0"))
            {
                t = 0.0f;
                minimum = maximum;
                Check = false;
            }
            txt1.text = RecordTxt;
            yield return new WaitForSeconds(0.1f);
        }
    }
    void EndData(GameObject game)
    {
        if (game == Ipf1.gameObject)
        {
            maximum = float.Parse(Ipf1.text);
            Check = true;
            StartCoroutine(Timer());
        }
    }
}

 

posted @ 2017-05-16 16:08  CocomoNo1  阅读(447)  评论(0编辑  收藏  举报