iOS 7:自定义UILabel新值打印旧值

时间:2014-10-27 18:19:29

标签: ios uilabel

我每次在UILabel方法中创建自定义[self refreshInterface],每次在[viewWillAppear]方法中调用该方法。它工作正常,直到我导航到其他UIViewController,然后返回UILabel的新文本。

新数据打印在前一个数据上,看起来很难看。如何在打印出新版本之前摆脱label.text的旧值。

代码:

if(_coin.dublicates.count>0)
    {
        UILabel *lbl=[[UILabel alloc]initWithFrame:CGRectMake(25.0, 13.0, 60.0, 20.0)];
        lbl.font=[UIFont fontWithName:@"Lato-Regular" size:8];
        lbl.textAlignment=NSTextAlignmentCenter;
        lbl.textColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"greenBg"]];
        lbl.text=[NSString stringWithFormat:@" +%lu",(unsigned long)_coin.dublicates.count];
        [_toolbar addSubview:lbl];
    }

1 个答案:

答案 0 :(得分:0)

您的视图控制器正在保存其视图。当您返回viewController并创建新的UILabel时,它会显示在上一个UILabel上。

就像rmaddy在评论中所说:

viewcontroller绑定到班级的属性(self.yourLabel.text = @"The text you want to assign";),然后重新分配文字。这绝对是最简单的解决方案。 IBoutlet

在大约2:00分左右,此视频介绍了如何通过XIBstoryboard中的标签创建- (void)viewWillDisappear {}http://teamtreehouse.com/library/build-a-simple-iphone-app/getting-started-with-iphone/what-is-an-iboutlet-2

然而,您可以UILabel通过获取子视图列表并检查UILabel,然后删除它来删除{{1}}。