我正在寻找一种方法来根据我需要的数量(1到5之间)在目标C中动态创建NSString对象。然后我想使用这些字符串作为动态创建的对象的名称;
伪代码:
for (i=1, i <= number_of_characters, i++)
{
NSMutableString* theString = [NSMutableString character];
[theString appendString:[NSString stringWithFormat:@"%i ",i]];
UILabel *theString;
[theString release];
}
我希望得到几个名为的
的UILabel对象character1
character2
character3
依旧......
谢谢!
答案 0 :(得分:4)
您可以动态创建UILabel对象,但不能在运行时创建变量。如果您想将标签的文本设置为theString
,那就没问题了:
NSMutableArray *labels = [NSMutableArray array];
for (i=1, i <= number_of_characters, i++)
{
NSMutableString* theString = [NSString stringWithFormat:@"%i ",i];
UILabel *label = [[UILabel alloc] initWithFrame:someCGRect];
label.text = theString;
[labels addObject:label];
[theString release];
}
现在你已经有了一个标签数组,每个标签都有一个数字作为文本。标签尚未添加到任何视图中,因此您需要处理此问题。