在关闭模式视图时更新 UILabels



当我在关闭模态后想更新 UILabels时,我遇到了问题。基本上我有:带有一些UILabels和UIButtons的ViewController。当我触摸按钮时,它会打开一个带有文本字段的模式,我在此文本字段中键入一些文本,该文本将保存到我所做的 CacheHandler 实例中。然后我用一个按钮关闭我的模态,我想看到我在 UILabel 中键入的文本。文本保存在缓存中,我已经检查过了。当我从自定义 segue 调用它时,我有一种方法可以更新我的标签,标签值为 null。我哪里做错了?

自定义续集:

#import "DismissModalSegue.h"
#import "CreateSqeedViewController.h"
@implementation DismissModalSegue
- (void)perform {
    UIViewController *sourceViewController = self.sourceViewController;
    CreateSqeedViewController *destViewController = self.destinationViewController;
    [sourceViewController.presentingViewController dismissViewControllerAnimated:YES completion:^{
        [destViewController updateLabels];
    }];
}
@end

更新标签方法:

- (void)updateLabels {
    NSLog(@"Updating labels: %@", [[[CacheHandler instance] createSqeed] place]);
/* displays what I want to display in my label */
    NSLog(@"%@", whatLabel.text);
/* displays null */
    whereLabel.text = [[[CacheHandler instance] createSqeed] place];
    whatLabel.text = [[[CacheHandler instance] createSqeed] sqeedDescription];
    NSString *peopleLabel = [NSString stringWithFormat:@"%@ / %@", [[[CacheHandler instance] createSqeed] peopleMin], [[[CacheHandler instance] createSqeed] peopleMax]];
    whoLabel.text = peopleLabel;
    whereLabel.text = [[[[CacheHandler instance] createSqeed] dateStart] description];
}

初始化标签在哪里?是否与IBOutlet有联系?也许在未初始化时回电

最新更新