通过应用程序在不同的UILabel不同的UICabels
我想在实用程序文件中创build一个通用的方法来为我的应用程序中的标签设置颜色。 我通过应用程序为所有标签有不同的颜色。
如何编写通用的方法来设置颜色?
我会build议使用一个类别。 制作一个名为“UIColor +品牌”或类似的类别。 在这里,你将有一个你需要的所有颜色的列表。 你可以做什么,只需将该类别导入到需要这些自定义颜色import "UIColor+Branding.h"
文件中,然后就可以调用[UIColor myCustomColor]
。
的UIColor + Branding.h
@interface UIColor (Branding) + (UIColor)myCustomColor; @end
的UIColor + Branding.m
#import "UIColor+Branding.h" @implementation UIColor (Branding) + (UIColor)myCustomColor { return [UIColor colorWithRed:4/255.0 green:181/255.0 blue:13/255.0 alpha:1.0]; } @end
在需要自定义颜色的类中:
#import "UIColor+Branding.h" lblTitle.textColor = [UIColor myCustomColor];
这种方法可以使应用程序中的品牌更具灵活性。 但是,如果您不关心这一点,那么在您的前缀中,只需导入UIColor + Branding头文件并在任何地方使用它,或者使用其他方法。
我使用这样的结构,但很快。
class Stuff: NSObject { struct GlobalVariables{ static let ThemeColor = UIColor(red: 41/255, green: 156/255, blue: 253/255, alpha: 1.0) static let ThemeSecondColor = UIColor.whiteColor() static let ThemeGrayLineColor = UIColor(red: 128/255, green: 128/255, blue: 128/255, alpha: 1.0) static let ThemeMyCommentsColor = UIColor(red: 219/255, green: 238/255, blue: 255/255, alpha: 1.0) static let ThemeCommentedToMeColor = UIColor(red: 227/255, green: 232/255, blue: 235/255, alpha: 1.0) static let ThemeFontName = "HelveticaNeue-Light" static let ThemeFontNameBold = "Helvetica-Bold" static let DeviceId = UIDevice.currentDevice().identifierForVendor.UUIDString static let MachineName = DeviceInfo.DeviceName() static let MachineProcessedName = Coz().MachineProcessName() static let SystemVersion = UIDevice.currentDevice().systemVersion static let DeviceLanguage = NSBundle.mainBundle().preferredLocalizations[0] as NSString static let ScreenWidth = UIScreen.mainScreen().bounds.size.width static let ScreenHeight = UIScreen.mainScreen().bounds.size.height }
}
我访问我的颜色是这样的:
self.view.backgroundColor = Coz.GlobalVariables.ThemeSecondColor
所以这基本上是我的iOS自定义硬编码的CSS。