কেন এই struct
এবং এর @objc class
কিছু দিয়ে একটি ফাইল তৈরি করবেন না :
import UIKit
extension UIColor {
convenience init(hex: Int) {
let components = (
R: CGFloat((hex >> 16) & 0xff) / 255,
G: CGFloat((hex >> 08) & 0xff) / 255,
B: CGFloat((hex >> 00) & 0xff) / 255
)
self.init(red: components.R, green: components.G, blue: components.B, alpha: 1)
}
}
extension CGColor {
class func colorWithHex(hex: Int) -> CGColorRef {
return UIColor(hex: hex).CGColor
}
}
struct Constant {
static let kParseApplicationId = "5678"
static let kParseClientKey = "1234"
static var kAppGreenColor: UIColor { return UIColor(hex:0x67B632) }
static var kTextBlackColor: UIColor { return UIColor(hex:0x000000) }
static var kSomeBgBlueColor: UIColor { return UIColor(hex:0x0000FF) }
static var kLineGrayCGColor: CGColor { return CGColor.colorWithHex(0xCCCCCC) }
static var kLineRedCGColor: CGColor { return CGColor.colorWithHex(0xFF0000) }
}
@objc class Constants: NSObject {
private override init() {}
class func parseApplicationId() -> String { return Constant.kParseApplicationId }
class func parseClientKey() -> String { return Constant.kParseClientKey }
class func appGreenColor() -> UIColor { return Constant.kAppGreenColor }
class func textBlackColor() -> UIColor { return Constant.kTextBlackColor }
class func someBgBlueColor() -> UIColor { return Constant.kSomeBgBlueColor }
class func lineGrayCGColor() -> CGColor { return Constant.kLineGrayCGColor }
class func lineRedCGColor() -> CGColor { return Constant.kLineRedCGColor }
}
অবজেক্ট-সি ফাইলগুলিতে ব্যবহারের জন্য আপনার যখন ধ্রুবক ব্যবহার করতে হবে তখন এটি যুক্ত করুন:
#import "ProjectModuleName-Swift.h"
দ্রুত ব্যবহার:
self.view.backgroundColor = Constant.kAppGreenColor
উদ্দেশ্য-সি ব্যবহার:
self.view.backgroundColor = [Constants appGreenColor]
এই ভাবে আপনি পুরো অ্যাপ্লিকেশনটির জন্য রঙ, ডিফল্ট পাঠ্য, ওয়েব পরিষেবা url এক জায়গায় আপডেট করতে পারবেন।