如何将数据传递给子UINavigationController?

时间:2010-12-24 09:30:57

标签: uitableview ios uinavigationcontroller

在第一个视图上。我有一个UItable。当我点击其中一个细胞(例如鸡)时,它会转到孩子(子视图)并显示细节(鸡肉颜色)。

有任何好的建议或教程如何做到这一点?

非常感谢。

2 个答案:

答案 0 :(得分:1)

获取good book


基本上,您使用

推送新的View Controller
[someNavigationController pushViewController:someVC animated:YES]

您可以通过名为

UITableViewDelegate方法调用此方法
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

只要用户点击UITableView中的单元格,就会调用此方法。


要传递数据,您可以使用自定义init方法,例如

-(id)initWithChicken:(ChickenObject *)chicken

或者您使用实例变量并将其设置为

[someVC setChicken:someChicken]

答案 1 :(得分:1)

同意fabian789将值传递给第二个视图。理论上有第三种方法,将第一个视图设置为第二个视图的委托。通过这种方式,您始终可以在第二个视图中调用委托方法,并从第一个视图中获取所需的内容。通常我使用custom -init或直接访问第二个视图的属性。然后我将第一个视图控制器设置为第二个视图控制器的委托,然后我可以将值传回。希望这会有所帮助。