oc调不了swift方法_oc 调swift方法 - CSDN
精华内容
参与话题
  • 1. swiftoc混编译具体怎么实现,这儿我就重复讲出了,网上有大把的人讲解。 2. 在swiftOC混编的编译环境下, oc能访问swift创建类中的代理? 解决方法如下: 在代理的头部加上 @objc(代理...


    1. swift与oc混编译具体怎么实现,这儿我就不重复讲出了,网上有大把的人讲解。

    2. 在swift与OC混编的编译环境下, oc类不能访问swift创建类中的代理?

    解决方法如下:



    在代理的头部加上 @objc(代理名字),这样就在外部就可以访问了,如下图。 然后就和oc中的代理一样,写上协议方法,就可以进行你想要的操作了。



    3. swift中的回调方法介绍:

       1. 通过代理 ,写法大家可以看上面的两张图片,和oc代理差不多。

       2. 通过闭包来实现oc中代码块(Block)的方法,来进行代码回调

           2.1 定义  (swift类)

          

          2.2 调用   (swift类)

        

         2.3 具体回调处:(OC - 类)

         


    本文持续更新, 看oc与swift 混编有哪些雷,需要我们踩

    展开全文
  • OC工程调用Swift方法

    万次阅读 2017-01-11 11:45:08
    1.建一个OC工程命名为SwiftOC 2.新建一个swfit文件命名为Test.swift,会弹出提示,选择Create Bridging Header建立桥接文件,系统会建立“工程名-Bridging-Header.h” 3.配置工程 设置Defines Module 为Yes ...

    为防止出问题,建议以这样的方法做:
    1.建一个OC工程命名为SwiftOC
    这里写图片描述
    2.新建一个swfit文件命名为Test.swift,会弹出提示,选择Create Bridging Header建立桥接文件,系统会建立“工程名-Bridging-Header.h”
    这里写图片描述

    这里写图片描述
    3.配置工程
    设置Defines Module 为Yes
    这里写图片描述
    设置Product Module Name 为当前工程名
    这里写图片描述

    此时系统会为工程创建一个“上面所填Product Module Name-Swift.h”的文件,此文件不可手动创建,必须使用系统创建的

    4.创建一个Test2.swift
    这里写图片描述

    import Foundation
    public class HH:NSObject
    {
    
        public func show()
        {
         print("hello")
        }
    }

    5.在OC文件中引用swift

    
    #import "ViewController.h"
    //导入时需要手动打上,系统没有提示
    #import "SwiftOC-Swift.h"
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
    
        HH *VC=[[HH alloc]init];
        [VC show];
    }
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    展开全文
  • SwiftOC相互

    2016-08-05 19:07:56
    在项目中不免会有多中语言开发, 说别的就我个人而言, 之前一直都是用 OC 写的代码, 封装很多工具类, 而苹果新出来 Swift , 现在项目在向 Swift 过渡, 或者新项目是 Swift , 想浪费时间用 Swift 封装工具类, 再说...

    在项目中不免会有多中语言开发, 不说别的就我个人而言, 之前一直都是用 OC 写的代码, 封装很多工具类, 而苹果新出来 Swift , 现在项目在向 Swift 过渡, 或者新项目是 Swift , 暂时没有时间用 Swift 封装工具类, 但有想在 OC 中可以用 Swift 的代码, Swift 文件也可以用 OC 的代码, 此时我们只要通过响应的配置做好桥接即可在 Swift 和 OC 中相互使用对方的资源!!!

    下面我就给大家分享 Swift 与 OC 相互调用的配置以及注意点!!!

    建议收藏!!!

    1. Swift 调用 OC

    • 创建桥接文件件—>xxxx.h
    • 在桥接文件中导入OC代码头文件
    • 配置桥接文件: 项目 ->buildSettings —> bridging —> 配置

    创建桥接文件.png

    配置桥接文件.png

    桥接文件相对路径.png

    在桥接文件中导入 OC 类头文件.png

    在 Swift 文件中使用 OC 类.png


    2. OC 调用 Swift

    • 项目名字不能随便起:
      • 不能有特殊符号(@ # $ % ^ ~ ! ? < > & - _ + , . " ' | \ { ( ) })
      • 也不能有中文
      • 最好纯英文(和数字), 以英文字母开头
    • Swift中的类/属性/法必须使 public修饰
    • 导入 项目名称-Swift.h

    Swift中的类/属性/法必须使 public修饰.png

    OC项目调用 Swift 文件.png


    展开全文
  • OC 调用 Swift 方法

    千次阅读 2018-09-06 11:47:34
    1.新建Swift文件之前做以下设置 2.创建Swift文件后,会提示创建桥接文件,点击创建 3.Swift 类 import Foundation class RealmManager: NSObject { override init() { super.init() } @objc func ...

    1.新建Swift文件之前做以下设置
    这里写图片描述

    2.创建Swift文件后,会提示创建桥接文件,点击创建

    3.Swift 类

    import Foundation
    
    class RealmManager: NSObject {
        override init() {
            super.init()
        }
        @objc func getConins() -> String {
            return "\(Setting.coins),\(Setting.currentLevel)"
        }
    }

    Swift的类必须继承NSObject 否则无法识别
    Swift的方法必须用@objc 修饰,否则,无法识别

    4.在OC中导入Swift引用
    、#import “plus-Swift.h”

    plus 就是上边截图的Product Name

    展开全文
  • OC调用Swift方法

    千次阅读 2018-05-02 15:36:48
    第一步:创建桥接文件第二步:配置桥接文件第三步:创建pch文件并配置其路径 第四步:在pch文件中导入如下头文件,注意:...,这里的xxx就是第二步中的Module name, 注意不要写错了 第五步:OC中直接调用Swift...
  • @OC调用Swift 方法 OC调用传多值参数Swift方法的处理 截止目前, Swift 已经达到4.2版本。有很多优秀的Swift库。有时需要OCSwift混编。学习研究了一下FaceAware 人脸感知开源库。 Swift方法传多值参数及OC调用 ...
  • 之前在开发是遇到了在OC文件中调用Swift对象的变量调用到的问题,这里总结一下: 1.首先我们一个Swift项目TestProject。 2.建立一个Swift的文件继承自NSObject名字为SwiftFile.swift,并声明一个字符串变量...
  • 最新一些学妹问起,所以抽点时间来写的,适合入门级别的swiftOC 混编 的程序猿。 本文章将从两个方向分别介绍 OCswift 混编 ... 1.2 如何在swift中实现oc的代理方法  1.3 如何在swift中实现oc的Block回 2
  • OCswift相互调用

    千次阅读 2017-04-26 11:39:33
    一、OC调用swift文件 二、swift调用OC文件 三、注意和总结 添加: 四、自定义桥接文件  一、OC调用swift文件  在OC项目中创建一个swift文件的时候,Xcode 会提示 需要创建一个桥接文件,点确定...
  • SwiftOC 互相调用

    千次阅读 2018-07-20 16:19:07
    Swift 调用 OC Swift 调用 OC 分为两种常见情况,一种是直接在 Application 的 project 中使用;另一种情况是,在 framework 开发中使用。 对于互相调用的原理,如下图所示,更详细的内容可以参考 《Using Swif ...
  • ...在OC中使用Swift 1.首先创建一个工程名字就叫做CHWTest1 2.在工程的Build Setting中把Defines Module改为YES,如图 3.把Product Name设为工程的名字,如图 4
  • 1.Swiftoc混编译具体怎么实现,这儿我就重复讲出了,网上有大把的人讲解。 2. 在swiftOC混编的编译环境下,oc能访问swift创建类中的代理? 解决方法如下: 在代理的头部加上 @objc(代理名字),...
  • iOS oc 调用 swift

    2019-07-03 07:14:24
    如股票oc要调用swift里面的代码 需要包含固定这个头文件 项目名称 LiqunSwiftDemo-Swift.h #ProjectName#-Swift.h 固定的写法 swift 目的 是取代oc 但是 不会完全取代 只是前端的替换 LiqunSwiftDemo-Swift 点...
  • oc调用swift

    千次阅读 2015-11-14 18:05:06
    如果你想在Objective-C工程中,嵌入Swift文件,实现OC调用Swift,那么这篇文章就能帮助你,由于本人最近在开发Swift项目,所以实现过OC调用Swift,在这过程中遇到过一些瓶颈,特此,将此文奉上,供大家参考。...
  • oc调用swift: 需要在暴露出来的方法和属性上加@objc否则可用。需要在工程配置里面做一些小改动。 具体设置和内容可以参考: https://www.jianshu.com/p/754396e7e1bd https://www.jianshu.com/...
  • OCswift的界面跳转及数据传输

    千次阅读 2018-12-05 17:06:18
    该项目主要介绍了ocswift之间、swift内部几种常见的传值方式(属性传值、代码块传值、代理传值、通知) 如果ocswift之间的桥接有疑问请参考:OCswift桥接互调 项目介绍 1、swift之间的页面跳转与返回...
  • iOS ocswift相互调用

    2020-09-04 16:59:32
    swift项目中建立第一个oc文件的时候,会弹出是否建立桥接文件的提示,点击“是”,项目中会出现ProjectName-Bridging-Header.h的文件。 oc调用swift ...swift5.2.4中想要暴露给oc方法和属性前要
  • iOS OC项目调用Swift

    2019-07-11 06:04:32
    https://blog.csdn.net/u010407865/article/details/62886943 转载于:https://www.cnblogs.com/-WML-/p/9177420.html
1 2 3 4 5 ... 20
收藏数 2,923
精华内容 1,169
关键字:

oc调不了swift方法