किसी भी दृश्य (या यूविवि सबक्लास) पर बॉर्डरकलर को स्टोरीबोर्ड का उपयोग करके थोड़ी सी कोडिंग के साथ सेट किया जा सकता है और यदि आप कई यूआई ऑब्जेक्ट्स पर बॉर्डर रंग सेट कर रहे हैं तो यह दृष्टिकोण वास्तव में आसान हो सकता है।
नीचे दिए गए चरण हैं कि इसे कैसे प्राप्त किया जाए,
- कैलेयर वर्ग पर एक श्रेणी बनाएँ। एक उपयुक्त नाम के साथ UIColor प्रकार की एक संपत्ति की घोषणा करें, मैं इसे बॉर्डर-बॉर्डर नाम दूंगा ।
- इस संपत्ति के लिए सेटर और गेट्टर लिखें।
- C सेटर ’विधि में परत की" सीमा "संपत्ति को नए रंगों CGColor मूल्य पर सेट करें।
- 'गेट्टर' पद्धति में परत के बॉर्डर के साथ UIColor लौटें।
पुनश्च: याद रखें, श्रेणियों में संग्रहीत गुण नहीं हो सकते। is बॉर्डर यूक्लोर ’को एक परिकलित संपत्ति के रूप में उपयोग किया जाता है, जो कि हम जिस पर ध्यान केंद्रित कर रहे हैं उसे प्राप्त करने के लिए एक संदर्भ के रूप में।
कृपया नीचे दिए गए कोड नमूने पर एक नज़र डालें;
उद्देश्य सी:
इंटरफ़ेस फ़ाइल:
#import <QuartzCore/QuartzCore.h>
#import <UIKit/UIKit.h>
@interface CALayer (BorderProperties)
// This assigns a CGColor to borderColor.
@property (nonatomic, assign) UIColor* borderUIColor;
@end
कार्यान्वयन फ़ाइल:
#import "CALayer+BorderProperties.h"
@implementation CALayer (BorderProperties)
- (void)setBorderUIColor:(UIColor *)color {
self.borderColor = color.CGColor;
}
- (UIColor *)borderUIColor {
return [UIColor colorWithCGColor:self.borderColor];
}
@end
स्विफ्ट 2.0:
extension CALayer {
var borderUIColor: UIColor {
set {
self.borderColor = newValue.CGColor
}
get {
return UIColor(CGColor: self.borderColor!)
}
}
}
और अंत में अपने स्टोरीबोर्ड / XIB पर जाएं, शेष चरणों का पालन करें;
- उस दृश्य ऑब्जेक्ट पर क्लिक करें जिसके लिए आप बॉर्डर कलर सेट करना चाहते हैं।
- "यूटिलिटी इंस्पेक्टर" (बाएं से तीसरा) "उपयोगिता" (स्क्रीन के दाईं ओर) पैनल पर क्लिक करें।
- "उपयोगकर्ता परिभाषित रनटाइम अटेंडेस" के तहत, "+" बटन पर क्लिक करके एक मुख्य पथ जोड़ें।
- "रंग" के लिए मुख्य पथ का प्रकार सेट करें।
- "Layer.borderUIColor" के रूप में मुख्य पथ के लिए मान दर्ज करें। [इस होना चाहिए याद रखें चर नाम , आप श्रेणी में घोषित नहीं BorderColor यहाँ यह borderUIColor ]।
- अंत में जो भी रंग आप चाहते हैं चुना।
सीमा रंग देखने के लिए आपको कम से कम 1 पर layer.borderWidth संपत्ति मान सेट करना है ।
बनाएँ और चलाएँ। हैप्पी कोडिंग। :)