我想要更新一个像这样创建的子视图:
CGRect keyLabelRect = CGRectMake(2, [heightofrow intValue]*i, [breitescroller2 intValue]-2,[heightofrow intValue]);
UILabel *keyLabel = [[UILabel alloc] initWithFrame:keyLabelRect];
[Inhalt1 addSubview: keyLabel];
[keyLabel release];
通过调用方法,“breitescroller2”获得了一个新值,这个术语被称为第二次和第三次,依此类推。我的问题是,具有旧位置的“旧UILabel”留在视图中,但我想用新位置替换它。有一个简单的方法吗?通过删除整个子视图(keyLabel removeFromSuperView),也删除了较新的子视图。
感谢您的帮助!
答案 0 :(得分:3)
如果您这样做,那么简单地修改现有UILabel的属性并且不是每次都创建一个新属性是否更有意义?在我看来,按照你现在的方式做到这一点,特别是因为你想用旧的替换旧的,在记忆方面是有点低效的。
我只是一个与Cocoa和Obj-C合作的初学者,所以我可能会遗漏一些让我的建议变得不可行的东西。
答案 1 :(得分:0)
我很确定您首先需要通过removeFromSuperview删除旧标签。