Exemplo n.º 1
0
    private void ResolveJson(string json)
    {
        var arr = (ArrayList)JsonResolve.JsonDecode(json);

        for (int i = 0; i < arr.Count; i++)
        {
            var item = (Hashtable)arr[i];
            var ac   = new AnnouncementWindowPre.AnnouncementContent();
            //object o = item["id"];

            ac.id = item["id"].ToString();

            ac.priority = item["priority"].ToString();
            ac.type     = item["type"].ToString();
            ac.title    = item["title"].ToString();
            ac.content  = item["content"].ToString();

            AnnouncementListItem go = GameObject.Instantiate <AnnouncementListItem>(window.AnnouncementObj.prefab);
            go.gameObject.SetActive(true);
            go.transform.SetParent(window.AnnouncementObj.listContaniner);
            go.transform.localScale = Vector3.one;
            go.UpdateContent(ac);

            itemList.Add(go);

            var btn = go.GetComponent <Button>();
            if (btn != null)
            {
                btn.onClick.AddListener(() =>
                {
                    window.AnnouncementObj.SetContent(ac);
                    go.HighLight(true);
                    itemList.ForEach(f =>
                    {
                        if (f != go)
                        {
                            f.HighLight(false);
                        }
                    });
                    if (passedNotice.Contains(ac.id) == false)
                    {
                        passedNotice.Add(ac.id);
                    }
                    go.UpdateNewState(!passedNotice.Contains(ac.id));
                });
            }

            go.UpdateNewState(!passedNotice.Contains(ac.id));
        }

        if (itemList.Count > 0)
        {
            itemList[0].GetComponent <Button>().onClick.Invoke();
        }
    }
Exemplo n.º 2
0
    internal void UpdateContent(AnnouncementWindowPre.AnnouncementContent item)
    {
        if (item != null)
        {
            this.data = item;
            if (item == null)
            {
                return;
            }

            content.text = item.title;
            UpdateType(int.Parse(item.type));
        }
    }