如何在 Swift 中使用 Objective-C 类?
请跟着我操作一遍。
1. 创建 Objc 类
创建一个 CustomObject.m 类。
2. 增加 Bridging Header
当你新增一个 .m 文件时,应该会有这样的弹框:

点击 YES !
如果你没有弹框,或者你无意间把 bridging header 文件给删除了,就自行添加一个 .h 文件,在项目里命名为 <#YourProjectName#>-Bridging-Header.h 。
有时候你想添加现有的 Objective-C 框架到你的项目里,在这种情况下,实现创建  <#YourProjectName#>-Bridging-Header.h 文件,然后如下操作:

注意
链接项目时,一个最佳实践是使用 $(SRCROOT) 宏,否则当你的项目移动到其他文件夹的时,项目就无法工作。可以把 $(SRCROOT) 理解为包含 .xcodeproj 文件的目录,如:
$(SRCROOT)/Folder/Folder/<#YourProjectName#>-Bridging-Header.h3. 添加 Objective-C 头文件
新增一个 CustomObject.h 到项目里。
4. 构建你的 Objective-C 类
CustomObject.h
#import <Foundation/Foundation.h>
@interface CustomObject : NSObject
@property (strong, nonatomic) id someProperty;
- (void) someMethod;
@endCustomObject.m
#import "CustomObject.h"
@implementation CustomObject
- (void) someMethod {
    NSLog(@"SomeMethod Ran");
}
@end5. 在 Bridging-Header 中新增调用
在 YourProject-Bridging-Header.h,增加这一行:
#import "CustomObject.h"6. 开始使用 Objc 类
在 SomeSwiftFile.swift 中:
var instanceOfCustomObject: CustomObject = CustomObject()
instanceOfCustomObject.someProperty = "Hello World"
println(instanceOfCustomObject.someProperty)
instanceOfCustomObject.someMethod()请注意在此文件中无需引入,因为我们在 Bridging-Header 已经引入过了。
注意:代码补全有时候会不是很准确,有时候 cmd + r 会起作用。
 
           手机开发 社区 Wiki
 手机开发 社区 Wiki
     
             
             关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: