我有一个我正在研究的项目,它有很多重复的方法,我希望能够从两个视图控制器访问。我尝试创建一个包含所有静态方法的类,它完美地工作,除了我只能将它导入到其中一个视图控制器中。 Xcode表示它正在尝试两次编译相同的代码。知道怎么解决这个问题吗?如何将相同的.m文件导入多个视图控制器?
答案 0 :(得分:1)
我只能将其导入其中一个视图控制器。 Xcode说它正在尝试两次编译相同的代码。
听起来您正在导入实施文件(.m
)而不是头文件(.h
)。
您的类应该在头文件中定义其接口,并在实现文件中实现它的实现。您导入头文件。
答案 1 :(得分:0)
如果像c ++这样的东西你可以使用预处理器指令,如下所示:
#ifndef MYCLASS_H
#define MYCLASS_H
//your class code here
#endif
目标c还有一个#import指令,用于检查文件是否只包含一次。
答案 2 :(得分:0)
您应该将文件添加到项目一次,然后将自定义类.h
文件导入每个viewcontroller
答案 3 :(得分:0)
导入项目中* -Prefix.pch文件中的.h
文件。你会发现:
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "YourClass.h"
#endif