Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Objective-C中实现数据源的最佳方式是什么_Objective C_Ios7 - Fatal编程技术网

在Objective-C中实现数据源的最佳方式是什么

在Objective-C中实现数据源的最佳方式是什么,objective-c,ios7,Objective C,Ios7,基本上,我想要一个数据结构,当我获得更多关于用户的信息时,我可以增长和收缩它。我想要一个简单的用户名及其关联数据的关联列表,例如: ` usersDictionary = { user_id : { id : "0123456789", full_name : "Spongebob Jones", more_data: { likes: "snails" } },

基本上,我想要一个数据结构,当我获得更多关于用户的信息时,我可以增长和收缩它。我想要一个简单的用户名及其关联数据的关联列表,例如:

` usersDictionary = {
      user_id : {
          id : "0123456789",
          full_name : "Spongebob Jones",
          more_data: {
              likes: "snails"
          }
      },
      next_user_id : {}
  }`
相对较新的Obj-C。。。我已经添加了一个数据源,我正在使用@interface NSMutableDictionary并将用户数据添加到其他NSMutableDictionary中。一切似乎都很好,但当我试图获取数据时,我得到了:

*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“*-[NSDictionary objectForKey:]:仅为抽象类定义的方法。定义-[UsersCollection objectForKey:]

我了解到不建议直接实现NSMuteableDictionary,因为它是一个集群类(?)


我正在寻找一些关于我是否以正确的方式进行的建议,如果不是,请指出

我想你的意思是你在对NSMutableDictionary进行子类化,而不是试图重新定义它


你(如果你感兴趣的话,请滚动我的答案,查看细节)。这几乎总是比它的价值更大的工作-简单地创建一个具有NSDictionary的类通常是更好的方法。

您永远不应该有一个
@interface
来命名(作为接口名称而不是超类)iOS类。上述结构可以实现为一个常规类(或一组类)或者一组嵌套字典。您关于集群类的链接答案对于我当前实现失败的原因非常有意义。我将按照您的建议实现,并使用嵌套字典。干杯