lcy
2025-12-03 b9a6e7e896b451e9c915e782a1789b2afe079cc9
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
using UnityEngine;
using UnityEngine.UI;
 
public class ChatTabCell : MonoBehaviour
{
    [SerializeField] ImageEx imgSelectBg;
    [SerializeField] ImageEx imgSelect;
    [SerializeField] ImageEx imgUnSelect;
    [SerializeField] TextEx txtTitle;
    [SerializeField] Button btnSelect;
    [SerializeField] Color selectedColor;
    [SerializeField] Color unSelectColor;
 
    ChatManager manager { get { return ChatManager.Instance; } }
    public void Display(int index, CellView cellView)
    {
        int tab = cellView.info.Value.infoInt1;
        if (!manager.IsValidChatTab(tab))
            return;
        ChatTab chatTab = (ChatTab)tab;
 
        bool isSelect = manager.IsSelectChatTab(chatTab);
        imgSelectBg.SetActive(isSelect);
        imgSelect.SetActive(isSelect);
        imgUnSelect.SetActive(!isSelect);
 
        imgSelect.SetSprite(manager.GetChatTabSelectIcon(chatTab, true));
        imgUnSelect.SetSprite(manager.GetChatTabSelectIcon(chatTab, false));
 
        imgSelectBg.SetNativeSize();
        imgSelect.SetNativeSize();
        imgUnSelect.SetNativeSize();
 
        txtTitle.text = manager.GetChatTabName(chatTab);
        txtTitle.color = isSelect ? selectedColor : unSelectColor;
 
        btnSelect.SetListener(() =>
        {
            if (!manager.IsTabOpen(chatTab, true))
                return;
            manager.nowChatTab = chatTab;
        });
    }
 
}