美文网首页
oc组件化项目与swift混编

oc组件化项目与swift混编

作者: 44Fish | 来源:发表于2020-08-21 18:46 被阅读0次

记录一下初学swift遇到的问题~

项目背景:service-protocol类型的组件化。在组件A中混编加入swift文件。

步骤:target设置SWIFT_VERSION

podfile里添加use_modular_headers!

问题:在Bridging-Header.h里引入了头文件,但是在.swift里还是不能使用

原因:在主工程里才在Bridging-Header.h里引入需要的头文件,在组件中只需要在.swift文件里import头文件

问题:有部分方法没有提示,也无法调用

原因:方法里面带有.swift文件里没有import的参数类型

问题:需要在组件A的 .swift 文件中调用组件B的协议方法,如果组件A依赖的是组件B的 protocol 就 import 不了,如果是依赖的组件就可以 import

原因:swift 里一个 module 必须要有一个实现文件,但是只有协议的.h文件那么没法形成一个 module 

解决方案:加一个 协议.m 文件就可以 import 协议了

问题:无法调用 + (instancetype)manager

原因:Xcode 限制了 swift 对 OC 初始化相关方法的调用,+ (instancetype)manager 写法会被忽略。

解决方案:使用 Xcode 认可的关键字 default、singleton、shared 为前缀声明方法名。

问题:

这行代码崩溃了

原因:UICollectionView API 设计中不让直接使用 init 方法,因为 collectionView 布局需要 layout 来实现

解决方案

不要直接x()

相关文章

  • oc Swift 混编

    oc Swift 混编 oc 项目 混编Swift1.1 oc 调用 Swift 的类 和 方法步骤: ...

  • oc组件化项目与swift混编

    记录一下初学swift遇到的问题~ 项目背景:service-protocol类型的组件化。在组件A中混编加入sw...

  • Swift与OC混编

    Swift与OC混编:OC文件使用Swift文件时,引入#import (项目名字)-Swift.h。(系统帮我们...

  • iOS开发之一Swift与OC混编

    Swift与OC混编:OC文件使用Swift文件时,引入#import (项目名字)-Swift.h。(系统帮我们...

  • iOS14 Widget从开发到上线 (五)

    oc主项目刷新Widget组件这个就是涉及到oc和 Swift混编。(还是以oc 主项目为例,当然如果你是Swi...

  • Swift

    混编 15、OC与Swift的混编_海森堡_lichangan的博客-CSDN博客_oc swift 混编[htt...

  • Object-C与Swift的混编

    关于swift与oc的混编分为两种情况: 1. 在swift项目中引入OC文件 在swift项目中使用oc的时候需...

  • OC与Swift混编

    OC与Swift如何实现混编 1、 Swift项目中使用OC 在Swift中引用OC需要借助桥接文件xx brid...

  • OC和Swift混编

    OC和Swift的混编,分为两种情况: OC项目中嵌入Swift文件 Swift项目中嵌入OC文件 先来看OC项目...

  • 记一次混编使用WebKit报错:Cannot find prot

    项目为OC与Swift混编,在swift类里面使用Webkit 解决办法:在项目pch文件里面:

网友评论

      本文标题:oc组件化项目与swift混编

      本文链接:https://www.haomeiwen.com/subject/nhrpjktx.html