2016-11-18 4 views
2

Für die Lokalisierung kann ich% @ in lokalisierten String definieren und es wird dynamisch gefüllt.iOS definieren String dynamisch

Aber kann ich das gleiche für diesen tun? Wenn ich nicht kann, gibt es einen alternativen Weg? Ich möchte keine Funktion schreiben und von dort anrufen.

#define MESSAGE @"Event - %@ is now saved in your calender." 
+4

Suchen Sie nach 'stringWithFormat:'? https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Strings/Articles/FormatStrings.html – clemens

Antwort

3

Makros sind nicht dynamisch. Das bedeutet, dass der Compiler @"Event - %@ is now saved in your calender." schreibt, wo immer Sie MESSAGE verwenden.

Aber Sie können die %@ Platzhalter zur Laufzeit ersetzen stringWithFormat: mit:

#define MESSAGE @"Event - %@ is now saved in your calender." 
NSString *string = [NSString stringWithFormat:MESSAGE, @"EventName"]; 

string wird nun sein: Event - Eventname wird jetzt in Ihrem Kalender gespeichert.

+2

Ich bin auf der Suche nach diesem. Danke :) –

Verwandte Themen