【发布时间】:2015-11-25 15:34:49
【问题描述】:
我创建了一个应用程序,它从我从本地主机提取的 JSON 数据填充一个表。我可以使用搜索栏搜索这些数据,并添加了一个按钮来将行添加到另一个表,我正在使用一个库来存储用户最喜欢的对象。所以现在我已经全部工作了,我正在尝试创建一个详细视图,当用户单击表中的一行时,他们会被带到一个新的视图控制器,然后他们可以查看对象的完整详细信息作为行初始表仅在每一行中列出了标题和作者。
我已经制作了 Segue 并创建了视图控制器等,当我尝试在 detaiViewController 上填充几个 UILabels 时,我收到一个错误:
【问题讨论】:
-
我猜?
[_papers objectAtIndex:self.listTableView.indexPathForSelectedRow.row]是NSDictionary对象,而不是Paper对象。 -
还有一个很好的提示:-[__NSCFDictionary Title]: unrecognized selector 如果您尝试向 NSDictionary 发送 Title: 消息,您会得到它:-)
-
你为什么要使用
weak属性,你明白它的作用吗? -
您需要展示如何解析您的 JSON,如何填充
_papers。 -
好的。你应该为你的 UITableView 使用
locations而不是_papers。换句话说,_papers是 JSON 数组,locations是 PARSED JSON 数组。所以Paper *myPaper = [locations objectAtIndex:self.listTableView.indexPathForSelectedRow.row];应该可以工作,但我建议在self.listTableView的数据源/委托方法中的其他位置使用位置。
标签: ios objective-c json