Possessions don't display on ItemsViewController


I just finished chapter 16 and have three Possessions in my dataset. I get three rows on ItemsViewController but they are empty rows. When I select one, I do see all of the data on ItemDetailViewController, as expected. If I change any data, it does properly save it as I can reenter the detail view and see the stored changes. If I add a new Possession (using Edit, Add New Item), it does properly create a new Possession which I can see at the detail level.

I know the data is “there” as I put a breakpoint on “return cell” in

  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    and I can see the data in the debugged object.

Additionally, I put NSLogs before the “return cell” above and in

  • (void)setPossession:(Possession *)possession {
    and can see the proper data (name and value) making it to the logs.
    However, when I step through the code, I cant really step over to the next step after “return cell”…all I can do is continue execution.

If I switch in the code from chapter 15 in ItemsViewController…

  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    …of course I can see the data on ItemsViewController–which leads me to believe that there’s an issue in HomepwnerItemCell. I double checked all code from chapter 16, including the layoutSubviews (I was thinking perhaps the data was there but a miscalculation caused it to be off the screen/hidden). But all code matches that in the book.

I’ve been spinning on this for quite some time now. Does anyone have any ideas on what I can do to debug?
Any help is appreciated!


Found the issue after much trial and error. It turns out it was a typo in the method name: “layoutSubViews” was used instead of “layoutSubviews”. The typo caused the method not to override the super as expected, thus no data displayed.