1

次のような多くのNSString定数を使用します。

static NSString * const REAColorPlaybackBackgroundKey = @"REAColorPlaybackBackgroundKey";
static NSString * const REAColorPlaybackForegroundKey = @"REAColorPlaybackForegroundKey";

不必要な重複があり、名前を変更する簡単な方法はありません。Xcode のRefactorコマンドはここでは機能せず、Edit All in Scopeでも処理できません。NSString定数を定義するよりスマートな方法はありますか?

4

1 に答える 1

1

確かに、次のようなことを試してください:

#define STRING_CONSTANT(PREFIX, NAME, SUFFIX) static NSString *const PREFIX ## NAME ## SUFFIX = @"" #PREFIX #NAME #SUFFIX

// usage
STRING_CONSTANT(REA, ColorPlaybackBackground, Key);
STRING_CONSTANT(REA, ColorPlaybackForeground, Key);

明らかに、必要に応じて、パラメータの代わりに定数を作成できPREFIXますSUFFIX

于 2012-11-06T20:52:13.960 に答える