繁体   English   中英

如何更新UILabel?

[英]How to update UILabel?

.h文件:

@property (strong, nonatomic) IBOutlet UILabel *frequencyDetailLabel;

.m文件:

-(void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    //LOCALIZATION
    ..
    self.frequencyDetailLabel.text = NSLocalizedString(@"Select", nil);
}

然后在我的代码后面,我尝试更改文本:

self.frequencyDetailLabel.text = NSLocalizedString(@"Done", nil);

我到目前为止所做的事情:

  • 确保IBOutlet连接正常工作。
  • 我没有更改文本,而是尝试更改textcolor并成功了。
  • 检查UILabel为null / nil,不是。
  • 确保两个都指向同一个UILabel
  • 在我的localizable.strings中,两个键都存在。

还有什么我应该尝试的?

编辑:

展开方法

- (IBAction)unwindFromFrequencyViewController:(UIStoryboardSegue *)segue {
if ([segue.sourceViewController isKindOfClass:[FrequencyTableViewController class]]) {

    FrequencyTableViewController *frequencyViewController = segue.sourceViewController;

    // if the user clicked Cancel, we don't want to set a frequency (skips code)
    if (frequencyViewController.frequency) {
        NSLog(@"THIS RAN");
        self.howOften = frequencyViewController.frequency;
        if ([frequencyViewController.frequency intValue] == 1) {
            NSLog(@"THIS RAN1");
            self.frequencyDetailLabel.text = @"Every day";
            return;
        } else {
            NSLog(@"THIS RAN2");
            self.frequencyDetailLabel.text = NSLocalizedString(@"Done", nil);
        }
    }
}

}

在另一个问题中找到解决方案: UILabel文本未更新

dispatch_async(dispatch_get_main_queue(), ^{
     [self.someLabel setText:someString];
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM