iOS中的全局颜色定义

Ben*_*Ben 1 objective-c uicolor ios

我想在我的应用程序中定义一些颜色.我对此有点新鲜,所以我不太确定在哪里放置我的颜色定义.

我可以将颜色定义为:

lightColor = [UIColor colorWithRed:48/255 green:160.0/255 blue:255.0/255 alpha:1.0];
Run Code Online (Sandbox Code Playgroud)

但是我在哪里放这个,以便在我的应用程序中使用它?

如果这是一个非常简单易懂的问题,请道歉,但我似乎无法在任何地方找到答案!

Wan*_*ong 5

您可以使用" 类别"定义全局颜色.首先,在Xcode中创建一个新文件,这次选择Objective-C File.下一个类型,

  • 文件:MyColor(例如)
  • 文件类型:类别
  • 类:UIColor

现在您拥有自己的类别,这是由Xcode生成的,您可以在UIColor不对其进行子类化的情况下添加自定义方法和属性.这是添加所需颜色的示例:

UIColor + MyColor.h中

+ (UIColor *)myLightColor;
Run Code Online (Sandbox Code Playgroud)

UIColor + MyColor.m中

+ (UIColor *)myLightColor 
{
    static UIColor *myLightColor = nil;
    static dispatch_once_t dispatchToken;

    dispatch_once(&dispatchToken, ^{
        myLightColor = [UIColor colorWithRed:48.0/255 green:160.0/255 blue:255.0/255 alpha:1.0];
    });

    return myLightColor;
}
Run Code Online (Sandbox Code Playgroud)

每当您需要在其他文件中使用自定义颜色时,只需导入UIColor+MyColor.h,并使用如下颜色:

self.aTitle.textColor = [UIColor myLightColor];
Run Code Online (Sandbox Code Playgroud)