示例#1
0
        private IEnumerator InitItemViewsRoutine(ItemsLoaderResponse itemsLoaderResponse)
        {
            var itemViews = _itemViewInitializer.CreateItemViews(itemsLoaderResponse.Items.Length, _itemsCountMax);

            yield return(null);

            int i = 0;

            foreach (var item in itemsLoaderResponse.Items)
            {
                string    errorMessage;
                Texture2D texture;
                //If icon wasn't loaded then error message will be shown
                if (itemsLoaderResponse.IconLoadingErrors.TryGetValue(item.Id, out errorMessage))
                {
                    _itemViewInitializer.DecorateItemView(itemViews[i], $"{item.Title}\n{errorMessage}", _errorIcon);
                }
                else if (itemsLoaderResponse.Icons.TryGetValue(item.Id, out texture))
                {
                    _itemViewInitializer.DecorateItemView(itemViews[i], item.Title, texture);
                }
                i++;
                yield return(null);
            }

            _loadingIndicator.enabled = false;
        }
示例#2
0
 private void OnItemsLoaded(ItemsLoaderResponse itemsLoaderResponse)
 {
     StartCoroutine(InitItemViewsRoutine(itemsLoaderResponse));
 }