如何在Xcode 6或更高版本中创build类别?

我想在我的应用程序中使用Xcode 6在UIColor上创build一个类别。但是,在Xcode 6中没有Objective-C类别文件模板。

有没有select在Xcode 6中创build一个类别?

他们没有忘记。 他们没有告诉任何人就移动了它。

  1. 点击File – > New – > File

  2. iOSMac OS Sources Objective-C file下分别selectObjective-C file ,然后单击下一步

  3. 现在在File Type:selectCategoryProtocolExtension

PS。 在File Name:无论你在这里input什么,都将是CategoryProtocolExtension名。

要创buildCategoryBaseClass + CategoryName.m / .h

  1. 文件→新build→文件…或使用⌘N
  2. selectObjective-C文件

在这里输入图像说明

  1. 键入类别名称,select文件types:类别 ,然后select基类。

在这里输入图像说明

  1. 完成stream程以创build类别。

这是一个视觉演示:

创建一个类别文件

Xcode6-Beta5更新

界面现在已经改变,可以直接从New> File窗口添加一个Category。

看unmircea的答案 。


我很惊讶自己,我猜是因为Swift,他们忘记了旧的Objective-C。

你有两个select:

  1. 使用类别名称创build一个Objective-C类,例如UIView+Powerups ,然后手动更改界面以匹配类别。 请注意,类别界面和实现的代码片段仍然有效,因此非常容易:input@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/ 

    closures并重新打开Xcode 6,您将在向导中find新文件的“Objective-C类别”。

在Xcode 6 beta中没有预定义的模板来创build类别(暂时),他们可能稍后添加这个选项。 作为一个工作,你可以创build一个名为UIImage+Additions (ClassName + CategoryName)的Cocoa Touch Class (它不是我知道的,但没有其他的方式),并覆盖它的接口和实现一些东西

的UIImage + Additions.h

 #import <UIKit/UIKit.h> @interface UIImage(Additions) +(void)testMethod; @end 

的UIImage + Additions.m

 #import "UIImage+Additions.h" @implementation UIImage (Additions) +(void)testMethod { } @end 

编辑
这个答案是在find在Xcode 6testing版中创build类别的方法之前编写的。 检查unmircea的答案是正确的创build类别的方法

如何创build一个自定义类别来实现一个自定义的UIColor调色板,你可以创build一个类别来扩展unmircea的神奇的答案 。

一旦你创build了你的类别(在这个例子中,它是一个 UIColor ColorPalette ),你将有一个头文件和一个实现文件。

的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颜色那样调用颜色。

以下是创build自定义调色板的更深入讨论的链接 。

此外,这里是一个工具来帮助您select自定义颜色值

您可以从旧版本的Xcode复制所需的模板,我为此创build了一个shell脚本: https : //github.com/cDigger/AddMissingTemplates

你可以像NSString + Helper一样创build“扩展”文件:

 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 { } 

完成。 享受编码