iPhone - 在TabBar中升级一级并调用方法

时间:2010-01-10 22:02:34

标签: iphone uinavigationcontroller uitableview

我有一个NavBar,一个TabBar和一个带有ScopeBar的SearchBar。因此,用户可以通过远程服务器执行搜索。单击TableView的一个TableRow,将一个带有xib的新ViewController推入。

它正在做一些计算,有可能,我不得不忽略这个视图(控制器),我应该回去,就像我点击导航栏中的“后退”按钮一样。

我如何以编程方式执行此操作并在此ViewController中调用方法,因为我必须使用保存的搜索词触发搜索。

有谁知道这个?

提前多多感谢&最诚挚的问候。

3 个答案:

答案 0 :(得分:1)

- (UIViewController *)popViewControllerAnimated:(BOOL)animated

如果你

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated

答案 1 :(得分:0)

使用委托。让表视图控制器创建新的视图控制器newViewController并在将其推送到导航堆栈之前设置newViewController.delegate = self。

然后在newViewController中,就在popViewControllerAnimated之前:调用[delegate doWhateverWhenNewViewControllerIsPopped:...]之类的方法。理想情况下,您声明一个名为NewViewControllerDelegate的协议,并让上面的控制器实现它。

您可以通过更改左侧导航按钮将NewViewController的后退按钮更改为“完成”或其他任何内容。 (参见UIViewController的属性。)

希望这是有道理的。

答案 2 :(得分:0)

我解决了这个问题,看看评论。