void OnLastChangedFilterItemChanged(SetVisibleFilterAction.IFilterItemInfo newData) { if (newData != null) { var filterItemInfo = (FilterItemInfo)newData; var filterListItem = m_ActiveFilterListItem.SingleOrDefault(e => e.groupKey == filterItemInfo.groupKey && e.filterKey == filterItemInfo.filterKey); if (filterListItem != null) { filterListItem.SetVisible(filterItemInfo.visible); } } }
void CreateFilterListItem(SetVisibleFilterAction.IFilterItemInfo filterItemInfo) { FilterListItem filterListItem; if (m_FilterListItemPool.Count > 0) { filterListItem = m_FilterListItemPool.Pop(); } else { filterListItem = Instantiate(m_FilterListItemPrefab, m_ParentTransform); filterListItem.visibleButtonClicked += OnVisibleButtonClicked; filterListItem.listItemClicked += OnListItemClicked; } bool isHighlighted = m_CachedHighlightFilter.groupKey == filterItemInfo.groupKey && m_CachedHighlightFilter.filterKey == filterItemInfo.filterKey; filterListItem.InitItem(filterItemInfo.groupKey, filterItemInfo.filterKey, filterItemInfo.visible, isHighlighted); filterListItem.gameObject.SetActive(true); filterListItem.transform.SetAsLastSibling(); m_ActiveFilterListItem.Add(filterListItem); }