1

重複の可能性:
iOS アプリケーションでグローバル定数を保存する場所は?

構成変数を中央の場所に保存したいと思います。変数は実行時に変更されません。プロジェクト内のどのクラスからでもアクセスできる必要があります。

私の現在のアプローチは、このように定義された構成変数を含むGlobalSettings.hファイルを用意することです

#define kCacheAge 10.0 //Max. Cache Age in Seconds
#define kNavigationTitleTint colorWithRed:0.443 green:0.471 blue:0.502 alpha:1.0
#define kNavigationTitleFont boldSystemFontOfSize:20.0

...必要な場所に名前を含めます。

欠点:

  • この GlobalSettings.h ファイルをすべてのクラスに手動で含める必要があります
  • これらの定数を文字列の一部として挿入することはできません (文字列の処理は置換アクションよりも強力なようです)

おそらく言及された欠点を回避するために、これを行うためのより良い方法はありますか?構成変数を保存するためのベストプラクティスはありますか?

4

2 に答える 2

5

GlobalSetting.hプロジェクトのプレフィックス ヘッダーにヘッダーを含めると、プロジェクト内のすべてのファイルに自動的に含まれます。プロジェクト内で<YourProjectName>-Prefix.pch. iOS プロジェクトの標準的なものは次のようになります。

//
// Prefix header for all source files of the 'IOSTest' target in the 'IOSTest' project
//

#import <Availability.h>

#ifndef __IPHONE_5_0
#warning "This project uses features only available in iOS SDK 5.0 and later."
#endif

#ifdef __OBJC__
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
#endif

#import "GlobalSettings.h"この場合、Foundation インポートの下に追加します。

于 2013-01-05T15:15:28.587 に答える
-2

1つのオプションは、値が変更された後の再コンパイルを必要としないINIファイルです。

簡単な(私の終わりからはテストされていない)例は、このスレッドにあります。

于 2013-01-05T13:56:50.983 に答える