将UIViewController实现拆分为多个源文件

时间:2013-05-31 09:38:56

标签: ios objective-c cocoa-touch uiviewcontroller extending-classes

我是iOS开发的新手,我正在寻找一个很好的例子。有人能给我一个链接吗?

我的问题:

我用一些UIViewController创建了一个项目,但我有一个控制器,它有很多方法。如何将UIViewController分成多个类?

最后,我想将我的UIViewController拆分为多个文件,但我希望我的UIViewController正常工作,就像所有方法都在同一个文件中一样。

如果有人可以给我一本好书或者解释它是如何运作的那么好。

2 个答案:

答案 0 :(得分:1)

您可以使用categories。您为每个类别创建一个单独的标题和实现文件,其中标题类似于:

@interface MyClass (SomethingMethods)

... // Function declarations

@end

然后,你实现它:

@implementation MyClass (SomethingMethods)

... // Implementation

@end

这允许您根据方法或您想要的任何内容将类拆分为单独的源文件。但是,请记住每个类别必须具有唯一名称。该名称并未在任何重要方面使用,但必须是唯一的,否则会出现编译错误。

请注意,类别不允许您声明属性或实例变量。您只能声明和实现方法。这意味着您必须在主源文件和实现中声明所有实例变量和@property。有关详细信息,请参阅official Apple documentation on categories

答案 1 :(得分:1)

也许您可以阅读Apple文档中的类别。你可以做一些你想要的事情:

Customizing Existing Classes

但是,我真的不知道你为什么要那样做。您可以使用编译指示来组织代码。