web-dev-qa-db-ja.com

Xcode 6以降でカテゴリを作成する方法

私は自分のアプリのUIColorにXcode 6を使ってカテゴリを作りたいのですが、Xcode 6にはObjective-Cのカテゴリファイルテンプレートはありません。

Xcode 6でカテゴリを作成するためのオプションはありますか?

314
Yalamandarao

彼らは忘れませんでした。彼らはただ誰にも言わずにそれを動かした。

  1. File - > New - > Fileをクリックします。

  2. それぞれSourcesまたはObjective-C fileiOSの下でMac OSを選択し、Nextをクリックします。

  3. File Type:の下でCategoryProtocol、またはExtensionのいずれかを選択してください

PS。 File Name:の下にここに入力するものは、CategoryProtocol、またはExtensionのいずれかの名前になります。

739
unom

CategoryBaseClass+CategoryName.m/.hを作成するには、

  1. ファイル→新規作成→ファイル...または⌘Nを使用します。
  2. Objective-C File を選択します。

enter image description here

  1. カテゴリ名を入力し、ファイルの種類:Category を選択してから、基本クラスを選択します。

enter image description here

  1. フローを完成させてカテゴリーを作成します。
76
Zorayr

これが視覚的なデモです。

creating a category file

33
rob mayoff

Xcode 6-Beta 5アップデート

インタフェースが変更され、新規>ファイルウィンドウから直接カテゴリを追加することが可能になりました。

unmirceaの答え をご覧ください。


私は自分自身を驚かせました、そしてSwiftのおかげで彼らは古き良き目標-Cについて忘れていたと思います。

2つの選択肢があります。

  1. カテゴリ名を使用してObjective-Cクラス(例:UIView+Powerups)を作成してから、カテゴリのカテゴリと一致するようにインタフェースを手動で変更します。カテゴリインタフェースと実装のスニペットはまだ機能しているので、これは非常に簡単です。@interface-category@implementation-categoryと入力します。

  2. 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を閉じて再度開くと、新しいファイルのウィザードに "Objective-C Category"が表示されます。

19
mokagio

Xcode 6 Betaでカテゴリを作成するための定義済みのテンプレートは(当分の間は)ありません、彼らは後でこのオプションを追加するかもしれません。回避策として、Cocoa Touch Class(ClassName + CategoryName)という名前のUIImage+Additions(これは私にはわかりませんが他にはありません)を作成し、そのインターフェースと実装をオーバーライドすることができます。

Uイメージ+ Additions.h

#import <UIKit/UIKit.h>

@interface UIImage(Additions)

+(void)testMethod;

@end 

Uイメージ+追加

#import "UIImage+Additions.h"

@implementation UIImage (Additions)

+(void)testMethod
{

}

@end

編集
この答えは、Xcode 6 Betaでカテゴリを作成する方法を見つける前に書かれました。カテゴリを作成する正しい方法については、unmirceaの回答を確認してください

12
Anil Varghese

unmirceaの素晴らしい答えを拡張する re:カスタムUIColorパレットを実装するためのカスタムカテゴリの作り方、カテゴリを作ることができます。

カテゴリを作成すると(この例では、ColorPalette ofクラス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"

redColorgreenColorblueColorのような標準色と同じように色を呼び出します。

カスタムパレットを作成するためのもう少し詳細な説明 へのリンクです。

さらに、これは カスタムカラー値を選択するのに役立つツールです

5
Adrian

あなたはXcodeの古いバージョンからあなたが欲しいテンプレートを単にコピーすることができました、私はこれのためにシェルスクリプトを作りました: https://github.com/cDigger/AddMissingTemplates

3
NSFish

NSString + Helperのような "extension"ファイルを作成することができます。

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 {


}

完了しました。コーディングを楽しむ

1
Rohit Sisodia