我正在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。 请给我一些想法。
很简单。
在 AppDelegate.h 中:
#define kGlobalColor [UIColor colorWithRed:(238.0f/255.0f) green:(251.0f/255.0f) blue:(255.0f/255.0f) alpha:0.8f]
在视图控制器中:
#import "AppDelegate.h"
self.view.backgroundColor = kGlobalColor;
比使用全局变量更好的是扩展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];
}
创建NSObject
constant.h
文件并全局定义此颜色
/255.0f) alpha:0.8f];
当您想使用它时,只需导入常量文件,其他 Wise 2 选项是下面。
第二种选择
AppDelegate.h
文件中,只是属性合成UIColor的一个变量,如波纹管。
@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;