• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

在Objc项目中调用Swift

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

之前的文字中记录了在Swift项目中调用OC的相关代码,比较简单直接 传送门 但是在OC中调用swift代码则不是那么的和谐,网络上很多文章业已经有点陈旧。记录步骤如下:

(1)启动 xcode -> 创建singleView新项目 -> 命名为: objcASwift

(2)创建 NextViewController.swift 继承于 UIViewController

(3)创建 Demo.swift 继承于 NSObject

注意勾选创建 ** -Briging-Header.h文件

2.ViewController.h 代码

(1)导入头文件。编译后导入,否则可能会提示错误;编写时或不会自动提示代码,属正常情况

(2) viewcontroller 页面创建点击事件


- (IBAction)demoTouchAction:(UIButton *)sender {
    NextViewController *next = [[NextViewController alloc]init];
    //设置next subTitle 属性
    next.subTitle = @"subTitle";
    // 调用 实例方法
    [next sayHello];
    // 页面跳转
    [self presentViewController:next animated:YES completion:nil];
}

3.NextViewController.swift 代码

此处应该注意

适当位置添加 public@objc 关键字,用以向objective-c暴露接口!

4. Demo.swift代码 (用以验证在objc项目中调用swift文件)

import UIKit

class Demo: NSObject {
    var name :String?;
    // oc项目中swift文件相互调用,并不需要public 和 @objc关键字
    func printName() -> Void {
        print(self.name)
    }
}

5.运行


至此基本完成~

6.总结

1 OC项目中调用Swift文件,关键在于项目头文件 programName-Swift.h 的引入。

2 其次在于连接文件 programName-Bridging-Header.h 的生成。

3 最后在swift文件的对应处添加 public @objc 等关键字,用以将相关方法暴露给objc。

亲情链接:
简书
博客园


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap