public void OnIconPointerUp(PointerEventData eventData, GameObject page)
    {
//		Log (TAG, "OnIconPointerUp eventData.position:"+eventData.position);
        IconController action = currentDragIcon.GetComponent <IconController> ();

        action.OnPointerUp(eventData);
        if (!iconMovingInfo.beginIconDrag)
        {
//			Log (TAG, "!iconMovingInfo.beginIconDrag");
            action.OnEndDrag(eventData);
            OnIconEndDrag(eventData, page);
        }
    }
    public void OnIconEndDrag(PointerEventData eventData, GameObject page)
    {
//		Log (TAG, "OnIconEndDrag eventData.position:"+eventData.position);
        iconMovingInfo.beginIconDrag = false;
        CancelInvoke();
        IconController action = currentDragIcon.GetComponent <IconController> ();

        action.OnEndDrag(eventData);
//		Log (TAG, "OnIconEndDrag currentDragIcon = null");
        currentDragIcon = null;
        if (iconMovingInfo.dragIndex != iconMovingInfo.dropIndex)
        {
            iconMovingInfo.dropIndex = iconMovingInfo.dragIndex;
        }
    }