Non, vous ne pouvez pas. La définition de la propriété pour « texte » est: -
@property(nonatomic, copy) NSString *text
qui signifie la méthode setter de la UILabel prend une copie de la chaîne que vous attribuez. Si ce n'était pas le cas, vous ne pourriez jamais assigner une chaîne auto-libérée à un UILabel, car le texte de l'étiquette disparaîtrait ou deviendrait fou une fois que la chaîne d'origine que vous avez assignée serait désaffectée, et vous seriez responsable de la gestion de la mémoire. Le propre texte d'UILabel, ce qui ne serait pas une bonne situation.
La réponse est de fournir un mécanisme pour mettre à jour le texte de l'étiquette chaque fois que la chaîne qui vous intéresse change. Comme l'a souligné @Graham Lee, cela ne peut jamais arriver avec une chaîne immuable, mais en supposant que votre texte source change mutuellement quelque part (un score de jeu, par exemple), vous devriez simplement mettre à jour l'étiquette chaque fois que cela arrive. Encore une fois, comme l'a souligné @Graham Lee, Cocoa fournit des observateurs, des délégués et diverses autres méthodes pour rendre cela relativement facile.
Oui, vous avez raison et j'aime l'idée avec observerValueForKeyPath! – troner