//-------------------------------------------------------- 
 | 
//    [Author]:           玩个游戏 
 | 
//    [  Date ]:           Monday, April 09, 2018 
 | 
//-------------------------------------------------------- 
 | 
using UnityEngine; 
 | 
using System.Collections; 
 | 
using UnityEngine.UI; 
 | 
  
 | 
  
 | 
public class UISmoothMove : MonoBehaviour 
 | 
{ 
 | 
    [SerializeField] Vector2 m_To; 
 | 
    public Vector2 to { 
 | 
        get { return m_To; } 
 | 
        set { m_To = value; } 
 | 
    } 
 | 
  
 | 
    [SerializeField] float m_Smooth = 0.2f; 
 | 
  
 | 
    Vector2 refPosition = Vector2.zero; 
 | 
    RectTransform rectTransform { get { return this.transform as RectTransform; } } 
 | 
  
 | 
    bool show = false; 
 | 
  
 | 
    public void Begin() 
 | 
    { 
 | 
        refPosition = Vector2.zero; 
 | 
        show = true; 
 | 
    } 
 | 
  
 | 
    public void Stop() 
 | 
    { 
 | 
        show = false; 
 | 
    } 
 | 
  
 | 
    private void LateUpdate() 
 | 
    { 
 | 
        if (Vector2.Distance(rectTransform.anchoredPosition, to) > 1f) 
 | 
        { 
 | 
            if (show) 
 | 
            { 
 | 
                var newPosition = Vector2.SmoothDamp(rectTransform.anchoredPosition, to, ref refPosition, m_Smooth, 1000, Time.deltaTime); 
 | 
                rectTransform.anchoredPosition = newPosition; 
 | 
            } 
 | 
        } 
 | 
        else 
 | 
        { 
 | 
            show = false; 
 | 
        } 
 | 
    } 
 | 
  
 | 
  
 | 
} 
 |