Как я могу преобразовать символы в объекте NSString в объекты UILabel? - PullRequest
0 голосов
/ 29 октября 2010

Я пытаюсь выяснить, как взять отдельные символы в объекте NSString и создать из них UILabel с текстом UILabel, установленным на отдельный символ.

Я новичок в Какао, но пока у меня есть это ...

NSString *myString = @"This is a string object";

for(int i = 0; i < [myString length]; i++)
{
  //Store the character
  UniChar chr = [myString characterAtIndex:i];

  //Stuck here, I need to convert character back to an NSString object so I can...

  //Create the UILabel
  UILabel *lbl = [[UILabel alloc] initWithFrame....];
  [lbl setText:strCharacter];

  //Add the label to the view
  [[self view] addSubView:lbl];
}

Помимо того, где я застрял, мой подход уже кажется очень хакерским, но я новичок и все еще учусь. Любые предложения о том, как подойти к этому, были бы очень полезны.

Большое спасибо за вашу помощь!

1 Ответ

4 голосов
/ 29 октября 2010

Вы хотите использовать -substringWithRange: с подстрокой длины 1.

NSString *myString = @"This is a string object";

NSView *const parentView = [self superview];
const NSUInteger len = [myString length];
for (NSRange r = NSMakeRange(0, 1); r.location < len; r.location += 1) {
    NSString *charString = [myString substringWithRange:r];

    /* Create a UILabel. */
    UILabel *label = [[UILabel alloc] initWithFrame....];
    [lbl setText:charString];

    /* Transfer ownership to |parentView|. */
    [parentView addSubView:label];
    [label release];
}
...