问题标签 [nsset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - 如何以相同的顺序将字符串的 NSArray 转换为唯一字符串的数组?
如果你有一个字符串的 NSArray
我怎么把它变成
..数组遵循与原始相同的顺序。我认为您可以将数组转换为 NSSet 以获取唯一项目,但如果您将其转换回数组,则不能保证获得相同的顺序。
objective-c - NSPredicate 过滤掉另一个集合中的所有项目
有没有办法做到这一点?我有一组要从另一组中排除的项目。我知道我可以遍历我的集合中的每个项目,如果它不在另一个集合中,则只将它添加到我的过滤集合中,但如果我可以使用谓词会很好。
要排除的项目集合不是直接相同类型的对象集合;它是一组字符串;如果其中一个属性与该字符串匹配,我想从我的第一组中排除任何内容....换句话说:
这可以用谓词代替吗?
iphone - 添加具有关系的实体的 NSSet 后应用程序挂起/崩溃
我必须解决我认为相关的主要问题,因为它们都发生在同一行代码中。
数据模型
注意:我已经尽我所能简化了代码和模型。
我的核心数据模型中有 3 个实体。
Merchant
(可以有很多Branch
个es,可以有很多个Sector
s)Sector
(可以有很多Merchant
s)Branch
(可以有一个Merchant
)
数据(以 JSON 格式)下载到应用程序。每个都Merchant
被迭代提取扇区,如果扇区存在,则将其提取并添加到NSMutableArray
.
该应用程序将挂在:
或者有时抛出异常:
解析代码几乎相同,Branch
但从来没有这些问题,否则应用程序将在成为问题之前挂起或崩溃 (??)。
如果应用程序被删除并重新安装代码将正常工作,是否存在现有的相同关系导致此问题?
编辑:使用 NSInvocationOperation 调用 JSON 的解析,因此当它挂起时界面保持响应。崩溃版本会杀死应用程序。
编辑 2: Merchant.h 和 Merchant.m
商户.h
商人.m
objective-c - NSMutableSet 是像链表一样实现的吗?
既然你不能随机访问 NSMutableSet 的元素,这是否意味着它像链表一样实现?
即它会比 NSMutableArray 有更快的插入/删除吗?
cocoa - 使用 NSPredicate 和一组答案
我有一组包含 personIDs 的字符串,并且我有一个 NSFetchedResults 的人 managedObjects 具有唯一的 strPersonIDs。我试图创建一个 NSPredicate 但它失败了。对此的任何帮助将不胜感激。我对 NSPredicate 有点陌生,所以请善待。
运行时错误消息是:Terminating app due to uncaught exception 'NSInvalidArgumentException',原因:'Unable to parse the format string "(strPersonID IN {( 300040, 300082, 412218 )})"'
xcode - [IOS SDK]-touchesBegin 与特定对象?
当我触摸屏幕上的任何位置时触发了 touchesBegan 事件。但如果我触摸 UIImageView 之类的特定对象,我无法管理?
iphone - 为什么这段代码这么慢?(CoreData & NSSet)
我有一个应用程序,我正在实现全文搜索。我有 2 个实体:关键字和文章之间存在多对多关系。有问题的代码是这样的:
输出是这样的:
如您所见,当我在设备(iPad iOS 4.2.1)上测试时,添加所有链接到集合中关键字的文章需要很长时间。当我在模拟器中测试时,时间是:
错误在哪里,我该怎么做才能加快速度?
iphone - 我如何分组然后计算一个 NSSet?
如何处理对核心数据实体中的记录进行分组,然后对它们进行计数,以便找到计数最高的组?
我有一个“集合”,它有许多“腿”,每条腿都有一个“赢家”。我要回答的问题是:谁赢得了最多的腿。
帮助表示赞赏。哦,新年快乐!
objective-c - 使用 NSUserDefaults 保存 CGPoints 列表
我有一堆来自 CCTMXLayer 的 CGPoints 我想保存到 NSUserDefaults 但似乎无法找到一种优雅的方式。
最初我希望保存一个带有 NSMutableSet 的 NSDictionary,以获得包含多个 NSValues (valueWithCGPoint) 的值。据我所知,NSUserDefaults 既不支持 NSMutableSet 也不支持 NSValue。
此时,我正在考虑将 CGPoint 的 x&y 值保存为字符串,并根据需要来回转换。
uitableview - TableView,以正确的顺序显示来自核心数据 NSSet 的记录
我已经研究了一段时间,我认为有很多解决方案,但我不确定它们是否那么好。可能是我错过了什么:-)
我有两张桌子。对于 TableA 中的每条记录,TableB 中都有多条记录。即一对多的关系。我已经将它映射到核心数据中并生成了类。到现在为止还挺好。
我的基于表格视图的 UI 需要如下所示:
当我在我tableView:cellForRowAtIndexPath:
的时候,很容易处理第 1 节单元格,因为它们是来自单个表 A 记录的不同字段。第 2 节单元格不同。每次tableView:cellForRowAtIndexPath:
调用我都需要从表 A 的 NSSet 中获取正确的表 B 记录。这就是问题所在。
NSSet doco表示不保证订单。这意味着如果我想要基于索引的特定记录,我有几种可能的技术:
- 向核心数据查询添加排序描述符,并使用快速枚举获取我想要的记录。我不知道这是否可行,因为我们仍在使用 NSSet。
- 在获取数据后使用排序描述符对 NSSet 进行排序以生成 NSArray 并将其存储在属性中,然后再开始加载表。
- 我现在正在考虑第三种选择,即为 NSSet 编写一个装饰器,它的作用类似于 NSArray,并允许我指定一个排序字段并自动跟踪对 NSSet 的更改。棘手,但从长远来看可能会有所回报。
这些答案似乎都不是那么好。有一个更好的方法吗?