lcy
4 天以前 b2247a4904cadf87f5a438d86dccf8d7424a59f2
382 武将宿缘-客户端 优化箱子礼包预览
1个文件已修改
49 ■■■■■ 已修改文件
Main/System/ItemTip/BoxItemWin.cs 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/ItemTip/BoxItemWin.cs
@@ -14,7 +14,11 @@
    [SerializeField] ItemCell itemCell;
    [SerializeField] Text nameText;
    [SerializeField] Text descText;
    [SerializeField] Transform transInbg;
    [SerializeField] Transform transInbgPreview;
    [SerializeField] Transform line;
    [SerializeField] ScrollerController scroller;
    [SerializeField] ScrollerController scrollerPreview;
    [SerializeField] SliderPanel sliderPanel;
    [SerializeField] Button openButton;
@@ -58,39 +62,38 @@
        nameText.text = itemConfig.ItemName;
        descText.text = itemConfig.Description;
        if (string.IsNullOrEmpty(guid))
        {
            openButton.SetActive(false);
            sliderPanel.SetActive(false);
        }
        else
        {
            openButton.SetActive(true);
            sliderPanel.SetActive(true);
        }
        bool isPreview = string.IsNullOrEmpty(guid);
        openButton.SetActive(!isPreview);
        sliderPanel.SetActive(!isPreview);
        transInbg.SetActive(!isPreview);
        transInbgPreview.SetActive(isPreview);
        line.SetActive(!isPreview);
        useCnt = 1;
        sliderPanel.Init((value) => { useCnt = value; }, itemCount);
        scroller.OnRefreshCell += OnRefreshCell;
        scrollerPreview.OnRefreshCell += OnRefreshPreviewCell;
        items = BoxGetItemModel.Instance.GetBoxItems(itemID);
        CreateScroller();
        CreateScroller(scroller);
        CreateScroller(scrollerPreview);
    }
    protected override void OnPreClose()
    {
        scroller.OnRefreshCell -= OnRefreshCell;
        scrollerPreview.OnRefreshCell -= OnRefreshPreviewCell;
    }
    void CreateScroller()
    void CreateScroller(ScrollerController scroller)
    {
        scroller.Refresh();
        for (int i = 0; i < items.Count; i++)
        {
            if (i % 4 == 0)
            {
            {
                List<Item> tmpIDs = new List<Item>();
                for (int j = 0; j < 4; j++)
                {
@@ -121,7 +124,21 @@
        _cell.Display(tmpIDs);
    }
    void OnRefreshPreviewCell(ScrollerDataType type, CellView cell)
    {
        var _cell = cell as BoxItemLineCell;
        List<Item> tmpIDs = new List<Item>();
        for (int j = 0; j < 4; j++)
        {
            int index = cell.index + j;
            if (index >= items.Count)
                break;
            tmpIDs.Add(items[index]);
        }
        _cell.Display(tmpIDs);
    }
}