У меня есть простая enum
в качестве структуры данных для двух UICollectionView
:
enum ToolBarItem {
case inking(PKInkingTool.InkType, UIColor, CGFloat)
case lasso
case eraser(PKEraserTool.EraserType)
}
обе модели UICollectionView
просто:
private(set) var tools = [ToolBarItem]()
Я хочу иметь возможность перетаскивать элементы внутри и между двумя UICollectionView
, и поэтому мне нужно как-то превратить это в dragItem.
Я читал о внедрении моего enum
в класс и реализации NSItemProviderWriting
, NSItemProviderReading
и Codable
для создания провайдера предметов. Но это очень грязно, и я надеюсь, что есть лучшее решение для этого, поскольку это всего лишь один enum
.
Я был бы очень рад получить любую помощь или совет.