首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于NotificationCenter和TabBarController的NotificationCenter可分发数据源

基于NotificationCenter和TabBarController的NotificationCenter可分发数据源
EN

Stack Overflow用户
提问于 2020-08-23 17:55:11
回答 1查看 222关注 0票数 0

我有两个UICollectionView控制器(一个店面,客户可以看到所有产品,还有后端,在这里我可以CRUD项目)嵌入到TabBarViewController中。两个视图控制器都有不同的数据源(最初它们包含相同的项,在我的例子中是带有"name“和"price”属性的对象)。

这个想法很简单:比方说,我点击后端VC中的一个单元,详细介绍VC,然后编辑对象的一些属性并确认更改。我想要的是,对对象的更改是可见的,无论是后端VC还是商店VC。

我想到的第一件事是实现NotificationCenter来广播从详细VC到后端和店面的更改,但事情是这样的:当我在后端VC中接收到项目并调用NotificationCenter时,一切正常,因为该项目属于后端VC数据源,但是当商店前端VC接收到相同的项目时,我得到以下错误:由于未登录的异常“NSInternalInconsistencyException”,终止应用程序,原因是:“无效参数不令人满意: indexPath indexPath

我了解到,不同的数据源是基于这样的思想,即项目是否相同--所以当我从后端数据源传递项目到商店数据源时,商店的数据源不知道如何实现snapshot.reloadItems,因为它一开始就没有具有适当id的项。

如何使用不同的数据源和NotificationCenter实现上述功能?或者其他方法?

我曾想过要为店面和后端提供共享数据源,但不确定这样做是否合理,将来是否会带来麻烦。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-06 14:29:48

我找到的唯一解决方案是将我的模型从Struct改为Class。这样一切都很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63550302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档