少年修仙传客户端代码仓库
lcy
2024-12-16 a39c35fc6449430cd02bccb681c4a0a880e46cd9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using EnhancedUI.EnhancedScroller;
using UnityEngine.UI;
using System;
 
public class CellView : EnhancedScrollerCellView
{
    Button m_btn;
 
    public Action<CellView> OnClick;
 
    public ScrollerDataType type;
 
    public float height = 100;
 
    public CellInfo? info;
 
    public ScrollerController controller { get; private set; }
 
    private ScrollerUI scrollerUI;
 
    public ScrollerUI diplayCell
    {
        get
        {
            if (scrollerUI == null)
            {
                scrollerUI = GetComponent<ScrollerUI>();
            }
            return scrollerUI;
        }
    }
 
 
    private void Start()
    {
        m_btn = GetComponent<Button>();
        if (m_btn != null)
        {
            m_btn.onClick.AddListener(OnBtnClick);
        }
    }
 
    public void SetData(ScrollerData data, ScrollerDataType type, ScrollerController controller)
    {
        index = data.index;
        this.type = type;
        this.controller = controller;
    }
 
    void OnBtnClick()
    {
        if (OnClick != null)
        {
            OnClick(this);
        }
    }
 
    public override void RefreshCellView()
    {
        if (controller != null)
        {
            controller.OnRefreshCellActive(this);
        }
        RefreshUI();
    }
 
    public void RefreshUI()
    {
        if (diplayCell != null)
        {
            diplayCell.Refresh(this);
        }
    }
}
 
public struct CellInfo
{
    public int infoInt1;
    public int infoInt2;
    public int infoInt3;
    public string infoStr1;
 
    public CellInfo(int infoInt1, int infoInt2, string infoStr1)
    {
        this.infoInt1 = infoInt1;
        this.infoInt2 = infoInt2;
        this.infoStr1 = infoStr1;
        this.infoInt3 = 0;
    }
 
    public void SetInfo(int _val)
    {
        infoInt3 = _val;
    }
 
    public static CellInfo Default
    {
        get
        {
            return new CellInfo(0, 0, string.Empty);
        }
    }
}