4

私はiPhoneアプリケーションで開発しています。このアプリでは、4 つの異なるビューがあります。すべてのビューで背景色を設定します。以下のコードを参照してください

self.view.backgroundColor = [UIColor colorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f];

背景色にさまざまな色をテストしています。色を変更する必要がある場合は、すべてのビュー コントローラーで変更する必要があります。その代わりに、これに対してグローバル変数を作成できますか? グローバル変数に UIColor を設定する方法がわかりません。私にいくつかのアイデアを提案してください。

4

3 に答える 3

9

とてもシンプルです。
AppDelegate.h で:

#define kGlobalColor [UIColor colorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f]

ViewController で:

#import "AppDelegate.h"

self.view.backgroundColor = kGlobalColor;
于 2012-11-21T12:54:35.533 に答える
0

constant.hのファイルを作成NSObjectし、この色をグローバルに定義します

#define globalColor [UIColor colorWithRed:(238.0f/255.0f) 緑:(251.0f/255.0f) 青:(255.0f/255.0f) アルファ:0.8f];

それを使用したい場合は、定数ファイルをインポートするだけです。それ以外の場合は、2つのオプションは次のとおりです..

2 番目のオプション

ファイルでAppDelegate.hは、次のようにUIColorの1つの変数をプロパティ合成するだけです..

@interface AppDelegate : UIResponder <UIApplicationDelegate>{
   ///your Data
   UIColor *globalColor;
}

@property (nonatomic,retain)  UIColor *globalColor;

以下のように.mファイルに合成します..

@syntesize globalColor;

メソッドではdidFinishLaunchingWithOptions、この変数に色を割り当てるだけです..

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
         globalColor = [UIColor colorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f];

}

この色を使いたいときは、このように使用します..

    AppDelegate *appDelegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
   self.view.backgroundColor = appDelegate.globalColor;
于 2012-11-21T12:56:03.020 に答える
0

グローバル変数を使用するよりも優れているのは、拡張することUIColorです。色を提供するコンストラクターでカテゴリを作成します。

UIColor+mycolor.h:

@interface UIColor (mycolor)
+ (UIColor*) myColor;
@end

UIColor+mycolor.m:

+ (UIColor*) systemBlue
{
return [UIColorcolorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f];
 }
于 2012-11-21T12:56:26.340 に答える