Example #1
0
    /// <summary>
    /// 推进垂直滚动文本
    /// </summary>
    private void ProcessTickVerticalRollText()
    {
        for (int i = 0; i < VerticalRollTextObjList.Count; i++)
        {
            VerticalRollObjData VRdata = VerticalRollTextObjList[i];
            //Vector3 HorObjPos = VRdata.VerticalRollUIObj.transform.localPosition;
            //float posxmove = Time.deltaTime * 40;
            //HorObjPos.y += posxmove;
            //VRdata.VerticalRollUIObj.transform.localPosition = HorObjPos;
            VRdata.DisappearTime -= Time.deltaTime;

            if (VRdata.DisappearTime < 1.0f && VRdata.DisappearTime > 0.0f)
            {
                Color imgcol = VRdata.VerticalRollUIObj.GetComponent <Image>().color;
                imgcol.a = VRdata.DisappearTime;
                VRdata.VerticalRollUIObj.GetComponent <Image>().color = imgcol;

                Color txtcol = VRdata.VerticalRollUIObj.transform.Find("Text").gameObject.GetComponent <Text>().color;
                txtcol.a = VRdata.DisappearTime;
                VRdata.VerticalRollUIObj.transform.Find("Text").gameObject.GetComponent <Text>().color = txtcol;
            }

            if (VRdata.DisappearTime < 0f)
            {
                GameMain.safeDeleteObj(VRdata.VerticalRollUIObj);
                VerticalRollTextObjList[i] = null;
                VerticalRollTextObjList.RemoveAt(i);
            }
        }
        if (VerticalRollTextObjList.Count == 0)
        {
            bVerticalRollTextUIShow = false;
        }
    }
Example #2
0
    /// <summary>
    /// 创建垂直滚动条
    /// </summary>
    /// <param name="rollText"></param>
    private void CreateVerticalRollTextObj(string rollText)
    {
        if (VerticalRollUIPerfabObj == null)
        {
#if ScFish
            AssetBundle bd = AssetBundleManager.GetAssetBundle("common.resource");
#else
            AssetBundle bd = AssetBundleManager.GetAssetBundle(GameDefine.HallAssetbundleName);
#endif
            if (bd == null)
            {
                return;
            }
            VerticalRollUIPerfabObj = bd.LoadAsset("Tips_Text") as Object;
        }

        GameObject obj = GameMain.instantiate(VerticalRollUIPerfabObj) as GameObject;
        obj.transform.SetParent(GameObject.Find("Canvas_1/Root").transform, false);
        obj.transform.SetAsLastSibling();
        obj.transform.Find("Text").gameObject.GetComponent <Text>().text = rollText;
        //调整一下已有文本的坐标
        int ObjListCount = VerticalRollTextObjList.Count;
        for (int i = 0; i < ObjListCount; i++)
        {
            Vector3 HorObjPos = VerticalRollTextObjList[i].VerticalRollUIObj.transform.localPosition;
            HorObjPos.y = (ObjListCount - i) * 40;
            VerticalRollTextObjList[i].VerticalRollUIObj.transform.localPosition = HorObjPos;
        }

        VerticalRollObjData vrdata = new VerticalRollObjData();
        vrdata.VerticalRollUIObj = obj;
        vrdata.DisappearTime     = 3.0f;
        VerticalRollTextObjList.Add(vrdata);
        bVerticalRollTextUIShow = true;
    }