我有一个新问题。我有一个表视图控制器,乍看之下工作正常。它打印出我的Nsmutabledictionary中的所有行。当我单击一行时,它会按预期触发此函数,而不会崩溃或给出系统错误:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]];
SCInventoryLeaf *childView = [storyboard instantiateViewControllerWithIdentifier:@"inventoryleaf"];
NSArray *keys = [arrInventory allKeys];
id aKey = [keys objectAtIndex:indexPath.row];
id anObject = [arrInventory objectForKey:aKey];
childView.title = aKey;
childView.price = [anObject objectForKey:@"price"];
[self.navigationController pushViewController:childView animated:YES];
}
但由于某些原因,我的childView在onRowClick之后没有出现。我在故事板中正确命名了标识符。
可能有什么不对? shoudl我接下来要排除故障吗?
编辑 - 我还提到我在SCInventoryLeaf.m的viewDidLoad中放了一些断点,但它们似乎永远不会被解雇。所以我猜测SCInventoryLeaf.m从未使用过?但我很确定我在我的tblviewcontroller和scinventoryleaf之间建立了一种关系.......
答案 0 :(得分:2)
输入断点并检查childView
是否不等于nil
。如果是,请仔细检查“inventoryleaf”是否正确。你拼写它是“InventoryLeaf”吗?如果需要,可以从故事板中剪切和粘贴
其余的代码看起来很好。