Beispiel #1
0
    private void _SetUpdateRectItem(int scrollPerLineIndex)
    {
        if (scrollPerLineIndex < 0)
        {
            return;
        }
        _curScrollPerLineIndex = scrollPerLineIndex;
        int startDataIndex = _curScrollPerLineIndex * maxPerLine;
        int endDataIndex   = (_curScrollPerLineIndex + viewCount) * maxPerLine;

        for (int i = _listItem.Count - 1; i >= 0; i--)
        {
            UIWrapGridCell item  = _listItem[i];
            int            index = item.Index;
            if (index < startDataIndex || index >= endDataIndex)
            {
                item.SetGridIndex(-1);
                _listItem.Remove(item);
                _unUseItem.Enqueue(item);
            }
        }

        for (int dataIndex = startDataIndex; dataIndex < endDataIndex; dataIndex++)
        {
            if (dataIndex >= _wrapGrid.GridSize)
            {
                continue;
            }
            if (_IsExistDataByDataIndex(dataIndex))
            {
                continue;
            }
            _CreateItem(dataIndex);
        }
    }
Beispiel #2
0
 public void RefreshCell(UIWrapGridCell cell)
 {
 }