private int protoSibling;    //原来位于第几号位置
    public void OnBeginDrag(BaseEventData eventData)
    {
        PointerEventData data = (PointerEventData)eventData;

        slot                    = null;
        protoSlot               = this.transform.parent;
        protoSibling            = this.transform.GetSiblingIndex();
        this.transform.position = data.position;
        this.transform.SetParent(MainMenuController.Instance.canvasTrans);

        if (isInMgr)
        {
            GameObject cloneSlogan = Instantiate(this.gameObject);
            cloneSlogan.gameObject.name = this.gameObject.name;
            cloneSlogan.transform.SetParent(protoSlot);
            cloneSlogan.transform.SetSiblingIndex(protoSibling);
            TypeSlogan slogan = cloneSlogan.GetComponent <TypeSlogan>();
            slogan.onClickSloganDelegate = this.onClickSloganDelegate;
            slogan.onEndEditDelegate     = this.onEndEditDelegate;
            slogan.onSlotEndDelegate     = this.onSlotEndDelegate;
            slogan.onDropEndDelegate     = this.onDropEndDelegate;
        }

        this.GetComponent <CanvasGroup>().blocksRaycasts = false;
    }
 public void CreateSlogan(TypeSlogan slogan)
 {
     if (_typesSloganRect.content.childCount > 101)
     {
         ProgressHUDManager.showComfirmHUD("类别已满上限,请清除无用类别");
         return;
     }
     slogan.typeName = "";
     slogan.isEditor = true;
 }
 private void addType(TypeSlogan slogan)//为标签管理添加新的标签
 {
     ServiceUser.addType(slogan.typeName, (responseObj) => {
         if (responseObj.code == 200)
         {
             ProgressHUDManager.showTipMsgHUD(responseObj.msg);
             showType();
         }
         else
         {
             ProgressHUDManager.showComfirmHUD(responseObj.msg);
             slogan.SetDefault();
             slogan.isEditor = false;
         }
     });
 }
 private void showType()
 {
     ServiceUser.showType((typeObj) =>
     {
         if (typeObj.code == 200)
         {
             for (int i = 0; i < _typesSloganRect.content.childCount; i++)
             {
                 GameObject go = _typesSloganRect.content.GetChild(i).gameObject;
                 Destroy(go);
             }
             int row = typeObj.types.Count / 5;
             if (row >= 3)
             {
                 _typesSloganRect.content.GetComponent <RectTransform>().sizeDelta = new Vector2(0, _sloganRectHeight * row);
             }
             else
             {
                 _typesSloganRect.content.GetComponent <RectTransform>().sizeDelta = new Vector2(0, _sloganRectHeight);
             }
             foreach (ContactTypeModel typeModel in typeObj.types)
             {
                 GameObject sloganObj         = Instantiate(typeSloganPfb);
                 TypeSlogan slogan            = sloganObj.GetComponent <TypeSlogan>();
                 slogan.typeName              = typeModel.typeName;
                 slogan.typeId                = typeModel.typeId;
                 slogan.onClickSloganDelegate = setSearchTypeName;
                 slogan.onEndEditDelegate     = updateSlogan;
                 slogan.onSlotEndDelegate     = newType;
                 slogan.onDropEndDelegate     = dropType;
                 sloganObj.transform.SetParent(_typesSloganRect.content);
             }
             GameObject defaultSloganObj         = Instantiate(typeSloganPfb);
             TypeSlogan defaultSlogan            = defaultSloganObj.GetComponent <TypeSlogan>();
             defaultSlogan.onClickSloganDelegate = CreateSlogan;
             defaultSlogan.onEndEditDelegate     = addType;
             defaultSlogan.SetDefault();
             defaultSloganObj.transform.SetParent(_typesSloganRect.content);
         }
         else
         {
             ProgressHUDManager.showComfirmHUD(typeObj.msg);
         }
     });
 }
 private void updateSlogan(TypeSlogan slogan)
 {
     ServiceUser.updateType(slogan.typeId, slogan.typeName, (responseObj) => {
         if (responseObj.code == 200)
         {
             ProgressHUDManager.showTipMsgHUD(responseObj.msg);
             if (selectId != -1)
             {
                 readContact(selectId);
             }
         }
         else
         {
             ProgressHUDManager.showComfirmHUD(responseObj.msg);
             slogan.ReturnName();
         }
     });
 }
 private void newType(TypeSlogan slogan)//为左侧信息栏标签添加标签
 {
     foreach (ContactTypeModel model in addressMessage.types)
     {
         int i = model.typeId;
         if (slogan.typeId == i)//若已经存在在信息栏中
         {
             Destroy(slogan.gameObject);
             return;
         }
     }
     foreach (int i in addressMessage.deleteType)
     {
         if (slogan.typeId == i)//若同样的标签之前被删除过
         {
             addressMessage.deleteType.Remove(i);
             break;
         }
     }
     slogan.SetOutMgr();
     addressMessage.newType.Add(slogan.typeId);
 }
Exemple #7
0
    public void OnDrop(PointerEventData eventData)
    {
        TypeSlogan slogan = eventData.pointerDrag.GetComponent <TypeSlogan>();

        slogan.slot = slotTrans;
    }
 private void setSearchTypeName(TypeSlogan slogan)
 {
     searchTypeName.text = slogan.typeName;
 }