Как установить текст ранее созданной NSMutableString? - PullRequest
2 голосов
/ 30 мая 2011

У меня есть NSMutableString, называемый makeString. Я хочу создать его в начале моей программы без необходимости устанавливать его текст. Затем я хочу иметь возможность установить его текст. В настоящее время я использую следующее для его создания.

NSMutableString *make2String = [[NSMutableString alloc] initWithString:@""];

Затем я использую следующее, чтобы установить его текстовое значение.

make2String = [NSString stringWithFormat:@"Gold.png"];

Это нормально, или есть лучший способ задать текст NSMutableString?

Ответы [ 3 ]

4 голосов
/ 30 мая 2011

Это не нормально, вы заменяете свою изменяемую строку обычной неизменяемой строкой (и в процессе пропускаете исходную изменяемую строку).Вы можете сделать [NSMutableString stringWithFormat:@"Gold.png"] после освобождения старой строки, если хотите пойти по этому пути.Или вы можете использовать метод NSMutableString setString: для установки содержимого.

Но если вы на самом деле не изменяете строку и просто присваиваете разные строки, вам вообще не нужен NSMutableString.Просто сделайте make2String = @"Gold.png"; и покончите с этим.

1 голос
/ 30 мая 2011
  NSMutableString * aString = [NSMutableString alloc];
  aString = [aString init];
  [aString setString:@"yourText"];
  [aString setString:@"yourNewText"];
  [aString setString:@"yourNewNewText"];
  //...
  [aString release];
0 голосов
/ 09 сентября 2014

make2String = [NSMutableString stringWithFormat:@"Gold.png"];

К вашему сведению: Это то, как я выделяю NSMutableStrings без установки текста

NSMutableString *string = [[NSMutableString alloc] init];

...