当前使用xcode7.3.1版本
一、OC项目中混编swift
1、在创建好的OC项目中直接创建swift文件
2、如果在项目中没有创建过swift文件,初次创建会提示你是否创建桥接头文件,点击“Create Bridging Header”
3、在你的OC项目中引入头文件
//项目名-Swift.h,S大小写貌似都没差别
#import "xxx-swift.h"
4、来一个测试跳转
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor orangeColor];
}
- (void)touchesBegan:(NSSet*)touches withEvent:(UIEvent *)event{
TestViewController * con = [TestViewController new];
[self presentViewController:con animated:YES completion:nil];
}
@end
5、在你的swift文件中改变下view的背景颜色方便看出改变
import UIKit
class TestViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.blueColor();
}
override func touchesBegan(touches: Set, withEvent event: UIEvent?) {
self.dismissViewControllerAnimated(true, completion: nil);
}
}
二、swift项目中混编oc
1、在创建好的swift项目中直接创建OC文件
2、如果在项目中没有创建过OC文件,初次创建会提示你是否创建桥接头文件,点击“Create Bridging Header”
3、在自动创建好的“项目名-Bridging-Header.h”文件中引入OC文件的头文件
#import "TestViewController.h"
4、在你的swift文件中就可以直接初始化进行使用了,
override func touchesBegan(touches: Set, withEvent event: UIEvent?) {
let con = TestViewController.init();
self.presentViewController(con, animated: true, completion: nil);
}
总结:两种混编其实都挺简单的,不用做其他特别复杂的配置。
Demo下载地址:
网友评论