我在OC工程中调用Swift的记录

心情
今天早晨在地铁站倒霉的遇到一个泼妇,虽然我很不愿意用这个词来形容一个妇女,但确实找不到合适的词来形容她,作为一个男人,我虽没有温文尔雅的举止,也不是特别的绅士,但还是一个很讲道理,很文明的人。本来想抽她几巴掌吧,回头想想和自己的形象不服,你和她讲道理吧,和泼妇是没有道理可讲的,只能自认倒霉,好在我们社会和谐,文明,这种泼妇形象的还是比较的少。我是大度之人,她影响了我一个小时的心情(还没到公司,导致我上班迟到了),到公司马上调整心态,开始上班。果然心情调整的极佳,昨天研究的在OC中调用Swift失败,今天一早就成功了,下面是我的调用记录。
1. 首先新建一个工厂 TestOCCallSwift

这里写图片描述

2. 然后在工程下面的Target中Build Setting中搜索defines module

这里写图片描述

3. Build Setting中搜索product module name, 确定其值和工程名称一致,若不一致的话,搜索product name, 将它的值修改为工程名称

这里写图片描述

4. 然后在工程中的Swift文件(我自己新建的一个文件夹)夹下创建一个Swift文件Student.swift, 在第一次创建swift文件的时候,会生成一个桥接文件,我们选择Create Bridging Header

这里写图片描述

5. 创建好的swift文件以及桥接文件如图所示

这里写图片描述

6. 在Student.swift文件中添加一些代码:
import Foundation

public class Student:NSObject {
    public var name:String?
    public var age:NSInteger

    init(name: String, age: NSInteger) {
        self.name = name
        self.age = age
    }

    public func printInfo() {
        print(self.name!, self.age)
    }
}

7. 然后在ViewController中调用,调用的时候,引入桥接文件以及-Swift.h文件,如果不成功的话,可以先编译一下工程,再引用。代码如下:
#import "ViewController.h"
#import "TestOCCallSwift-Bridging-Header.h"
#import "TestOCCallSwift-Swift.h"

@interface ViewController ()
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    Student *stu = [[Student alloc] initWithName:@"张三" age:25];
    [stu printInfo];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

@end
无论遇到什么不开心的事,及时的调整自己的心情,改变不了别人,那就改变自己,改变自己的心情,没有必要为那些不开心的事而烦恼,人生路漫漫,还有更多的美好的事物在等待着你。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值