Example #1
0
    /// <summary>
    /// 输入值的响应
    /// </summary>
    /// <param name="val"></param>
    public void OnChangeValue(string val)
    {
        if (float.Parse(val) > 99)
        {
            inputVale.text = "99";
            return;
        }


        if (oldVal.ToString() == val)
        {
            return;
        }
        if (val == null || val.Length < 1)
        {
            return;
        }
        //if (val.Equals("0"))
        //{
        //    inputVale.text = "";
        //    return;
        //}
        float v        = float.Parse(val);
        Color newColor = new Color(0, 0, 0, 1);

        if (v == 0)
        {
            oldVal   = 0;
            newColor = new Color(1, 1, 1, 1);
            callBack.Invoke(0, newColor);
            return;
        }

        if (v > currentMaxNum)  //如果大于当前的值
        {
            oldVal        = v;
            newColor      = (oldColor * currentMaxNum) * (1 / v);
            currentMaxNum = v;
            callBack.Invoke(currentMaxNum, newColor);
            return;
        }
        else
        {
            oldVal        = v;
            currentMaxNum = v;
            callBack.Invoke(currentMaxNum, oldColor);
            return;
        }
    }