У меня есть словарь, содержащий UIColor
объекты, хэшированные значением enum, ColorScheme
:
var colorsForColorScheme: [ColorScheme : UIColor] = ...
Я хотел бы иметь возможность извлечь массив из всех цветов (значений), содержащихся в этом словаре. Я думал, что могу использовать свойство values
, которое используется при итерации по значениям словаря (for value in dictionary.values {...}
), но это возвращает ошибку:
let colors: [UIColor] = colorsForColorSchemes.values
~~~~~~~~~~~~~~~~~~~~~^~~~~~~
'LazyBidrectionalCollection<MapCollectionView<Dictionary<ColorScheme, UIColor>, UIColor>>' is not convertible to 'UIColor'
Кажется, что вместо возвращаемого значения Array
метод values
возвращает более абстрактный тип коллекции. Есть ли способ получить Array
, содержащий значения словаря, без выделения их в цикле for-in
?