0

我有一个按钮——按下时——加载一个表格视图。当用户选择一个表格视图单元格时,didSelectRowAtIndexPath将被调用。那时我希望表格视图关闭并且我之前打开的视图显示。我已经完成了所有这些。但是如何将选定的单元格文本获取到上一个视图的按钮标签?

目前我有一个单例数据存储(数据是静态的),它具有第一个视图控制器可以访问的“最后选择”值。didSelectRowAtIndexPath 设置得很好。但是之前的视图控制器是如何知道表格视图何时关闭的呢?而且,我怎样才能跟踪按下了哪个按钮,以便知道要更改哪个标签?

我有一种感觉,这甚至可能不是正确的方法 - 如果是这样,请指导我找到更好的方法。

4

1 回答 1

1

当您将控制权返回给之前的视图控制器时,会调用 viewWillAppear 和 viewDidAppear。您可以使用其中一种方法来检查“最后选择”是否具有有效值。

作为一种替代方法,您可以让您的 didSelectRowAtIndexPath 捆绑前一个控制器所需的信息,并将其作为对象(或用户信息字典)发布一个 NSNotification。这样,您可以直接响应通知,而不必确定视图出现时是否有事可做。

编辑:刚刚阅读了您关于使用 addSubview 的评论,我想说,忘记我的 viewWillAppear/viewDidAppear 建议并使用 NSNotification。

于 2012-04-24T15:22:56.787 回答