0

在我的一个视图控制器中,我有一个名为

-(void)calculateUpdatedTotal{ // do things here }

每次用户离开一个文本字段(其中有很多)时,我都会运行更新,语句如下所示:

[self calculateUpdatedTotal];

它工作得很好,除了下面描述的。

我需要在控制器视图出现时更新计算,因此在我的 viewDidAppear 方法中,我包含了调用该方法的语句。viewDidAppear 正在按预期运行,但 [self calculateUpdatedTotal]; 什么都不做。没有错误,也没有警告。我使用了几个 NSLog 语句来缩小范围,一切都很好,只是它没有运行。它可能与 viewDidAppear 有关吗?任何关于如何追踪和解决问题的想法将不胜感激。

4

1 回答 1

0

我假设您没有在 viewWillLoad 或 view WillUnload 中调用来验证这些例程是否被调用。假设此代码位于带有 nib 和视图的 UIViewController 子类中,唯一可能的解释是您输入了方法名称并且没有使用命令竞争或复制粘贴。那就是验证你有:

- (void)viewWillAppear:(BOOL)animated;
- (void)viewDidAppear:(BOOL)animated;

我从来没有听说过系统没有调用这些的情况。但是,如果您拼错了名称,您将永远不会知道,因为它不是强制您提供此类方法的协议。

于 2012-08-08T21:33:21.770 回答