मैं UIColor
Xcode 6 का उपयोग करके अपने ऐप में एक श्रेणी बनाना चाहता हूं। लेकिन बात यह है कि Xcode 6 में कोई Objective-C फ़ाइल फ़ाइल टेम्पलेट नहीं है।
क्या Xcode 6 में श्रेणी बनाने का कोई विकल्प है?
@interface UIColor(MyCategory) ...
आदि
मैं UIColor
Xcode 6 का उपयोग करके अपने ऐप में एक श्रेणी बनाना चाहता हूं। लेकिन बात यह है कि Xcode 6 में कोई Objective-C फ़ाइल फ़ाइल टेम्पलेट नहीं है।
क्या Xcode 6 में श्रेणी बनाने का कोई विकल्प है?
@interface UIColor(MyCategory) ...
आदि
जवाबों:
वे नहीं भूले। वे बिना किसी को बताए बस चले गए।
क्लिक करें File
-> New
->File
चयन Objective-C file
के तहत Sources
में iOS
या Mac OS
क्रमशः और अगला क्लिक करें
अब के तहत File Type:
या तो चुनें Category
, Protocol
याExtension
पुनश्च। के तहत File Name:
जो भी आप यहाँ टाइप हो जाएगा या तो Category
, Protocol
या Extension
नाम।
Objective-C File
एक्सकोड 6 के लिए दिया गया विवरण "एन खाली उद्देश्य-सी फ़ाइल है।", मेरे विवरण के बजाय, जो होगा, "पुराने में से एक, सभी खाली नहीं, उद्देश्य-सी फाइलें जो आपके लिए उपयोग की जाती हैं" , जो मुझे काफी अच्छी तरह से फेंक दिया!
Xcode6-Beta5 अपडेट
इंटरफ़ेस अब बदल गया है और नई> फ़ाइल विंडो से सीधे श्रेणी जोड़ना संभव है।
देखिए अनमरकिया का जवाब ।
मैं खुद हैरान था, और मुझे लगता है कि स्विफ्ट के कारण वे अच्छे पुराने उद्देश्य-सी के बारे में भूल गए ।
आपके पास दो विकल्प हैं:
श्रेणी नाम के साथ एक उद्देश्य-सी वर्ग बनाएं, उदाहरण UIView+Powerups
, फिर मैन्युअल रूप से श्रेणी के एक से मिलान करने के लिए इंटरफ़ेस बदलें। ध्यान दें कि श्रेणी इंटरफ़ेस और कार्यान्वयन के लिए स्निपेट अभी भी काम कर रहा है, इसलिए यह अतिरिक्त आसान है: प्रकार @interface-category
और @implementation-category
।
इसे Xcode 5 से आयात करें! इस कमांड का उपयोग करें:
cp -r /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File\ Templates/Cocoa\ Touch/Objective-C\ category.xctemplate /Applications/Xcode6-Beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File\ Templates/Source/
बंद करें और Xcode 6 को फिर से खोलें और आपको नई फ़ाइल के लिए विज़ार्ड में "ऑब्जेक्टिव-सी श्रेणी" मिलेगी।
Xcode 6 बीटा (समय के लिए) में श्रेणी बनाने के लिए कोई पूर्वनिर्धारित टेम्पलेट नहीं है, वे बाद में इस विकल्प को जोड़ सकते हैं। Cocoa Touch Class
अपने आस-पास के काम के रूप में (इसका उचित रूप से मुझे पता नहीं है लेकिन कोई अन्य तरीका) नाम UIImage+Additions
(ClassName + CategoryName) बना सकते हैं और इसके इंटरफ़ेस को ओवरराइड कर सकते हैं और किसी चीज़ को लागू कर सकते हैं
#import <UIKit/UIKit.h>
@interface UIImage(Additions)
+(void)testMethod;
@end
#import "UIImage+Additions.h"
@implementation UIImage (Additions)
+(void)testMethod
{
}
@end
संपादित करें
यह उत्तर Xcode 6 बीटा में श्रेणी बनाने का तरीका खोजने से पहले लिखा गया था। श्रेणी बनाने के सही तरीके के लिए unmircea के उत्तर की जाँच करें
विस्तार unmircea के शानदार जवाब पुन: एक कस्टम लागू करने के लिए एक कस्टम श्रेणी बनाने का तरीका UIColor
पैलेट, आप एक वर्ग बना सकते हैं।
एक बार जब आप अपनी श्रेणी बना लेते हैं (इस उदाहरण में, यह वर्ग की श्रेणी कहलाती ColorPalette
है ), तो आपके पास एक हेडर और एक कार्यान्वयन फ़ाइल होगी। UIColor
UIColor + ColorPalette.h
#import <UIKit/UIKit.h>
@interface UIColor (ColorPalette)
// Your custom colors
+ (UIColor *) customRedButtonColor;
+ (UIColor *) customGreenButtonColor;
@end
UIColor + ColorPalette.m
#import "UIColor+ColorPalette.h"
@implementation UIColor (ColorPalette)
// Button Colors
+ (UIColor *) customRedButtonColor {
return [UIColor colorWithRed:178.0/255.0 green:25.0/255.0 blue:0.0/255.0 alpha:1.0];
}
+ (UIColor *) customGreenButtonColor {
return [UIColor colorWithRed:20.0/255.0 green:158.0/255.0 blue:96.0/255.0 alpha:1.0];
}
अपने कस्टम रंग पैलेट का उपयोग करने के लिए, उस शीर्ष लेख को कक्षा में आयात करें जहाँ आप अपने कस्टम रंग लागू करना चाहते हैं:
#import "UIColor+ColorPalette.h"
और जैसा कि आप की तरह एक मानक रंग रंग फोन redColor
, greenColor
, या blueColor
।
यहाँ एक कस्टम पैलेट बनाने की थोड़ी और अधिक गहन चर्चा का लिंक दिया गया है ।
इसके अतिरिक्त, यहां कस्टम रंग मानों का चयन करने में आपकी सहायता करने के लिए एक उपकरण है
आप Xcode के पुराने संस्करण से अपने इच्छित टेम्पलेट को कॉपी कर सकते हैं, मैंने इसके लिए एक शेल स्क्रिप्ट बनाई: https://github.com/cDigger/AddMissingTemplates
आप NSString + हेल्पर जैसी "एक्सटेंशन" फ़ाइल बना सकते हैं:
1: File → New → File... or use ⌘N.
2: Name NSString+Helper (For example)
3: create the file
4: Remove the code from file
5: add
extension NSString {
}
किया हुआ। कोडिंग का आनंद लें