gpt4 book ai didi

ios - tableView 和普通 View (相同的数据对象)

转载 作者:行者123 更新时间:2023-11-28 17:48:31 25 4
gpt4 key购买 nike

我不知道如何在两个标签栏项目之间共享相同的数据。一个选项卡使用 nsfetchedresultscontroller,另一个表只是一个普通 View ,应该使用与我的 fetchedresultscontroller 相同的数据。

如果我有两个法线 View ,我会让我的对象成为一个单例,并让 TableView 和法线 View 使用相同的数据。

但现在我有一个 fetchresultscontroller 和一个普通 View 。我正在考虑为我的普通 View 使用另一个 fetchedresultscontroller,所以我拥有所有功能,例如获取缓存、通知等。

我知道 fetchresultscontroller 应该用于 tableview,但我想我也可以将它用于非 tableview。

有人知道我应该做什么吗?我找不到苹果关于此事的文档。

最佳答案

您的数据应该与您的 viewController 或 View 无关——也就是说,如果您遵循 MVC 风格。如果您的数据仅在一个 viewController 中可用并且您不想将其提取到它自己的类中,那么请在您的 viewController 中提供可以被另一个 viewController 调用以获取数据的方法。

例如,有这样的方法:

- (NSString) getNameOfSelectedUserAtIndex:(int) index;
- (int) getCountOfSelectedUsers;
- (NSSArray) getResults;

然后在您的其他 viewController 中调用:

string = [fetchedresultscontroller getNameOfSelectedUserAtIndex:i];
count = [fetchedresultscontroller getCountOfSelectedUsers];
array = [fetchedresultscontroller getResults];

您必须确保将 fetchedresultscontroller 作为实例变量添加到您的另一个viewController 并可能在其 viewDidLoad 中设置它。

关于ios - tableView 和普通 View (相同的数据对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1406669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com