У меня две цели в проекте, первая (магазин) - это своего рода магазин фонов, вторая цель - расширение (клавиатура).
Итак, в магазине у меня есть Collection View и в didSelectItemAt я хочу вызвать метод для цели расширения (клавиатура).
// file: ShopController.swift
let kbvc = KeyboardViewController()
// ...
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
kbvc.setBGrImage(data[indexPath.item])
}
// file: KeyboardViewController.swift
lazy var bgrImageView: UIImageView = {
let i = UIImageView()
i.image = UIImage(named: "Bgr1")
return i
}()
// in viewDidLoad add to the view, put constraints etc...
func setBGrImage(_ image: String) {
DispatchQueue.main.async {
self.bgrImageView.image = UIImage(named: image)
self.bgrImageView.setNeedsDisplay()
}
// Breakpoint / print shows that image is here...
/*
po bgrImageView.image
Optional<UIImage>
- some : <UIImage:0x600003197450 named(main: Bgr2) {320, 225}>
*/
}
... но ImageView не меняет изображение.
Можно ли вообще так делать или нужно что-то еще?
Спасибо