swift framework使用OC 代码两种方式示例
<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>引言</li><ul class="second_class_ul"><li>第一种:</li><li>第二种:</li><ul class="third_class_ul"><li>1. 新建一个module.modulemap文件:</li><li>2.设置module.modulemap引用路径</li><li>3.import module</li></ul></ul></ul></div><p class="maodian"></p><h2>引言</h2><p>swift 在工程中可以通过桥接文件使用OC代码,但是在framework中是不支持使用桥接文件的,下面是是swift framework 使用 OC 代码的两种方式。</p>
<p class="maodian"></p><h3>第一种:</h3>
<p>在target->Build Phases->Headers中,将引入的oc文件由project移动到public中,再在公共.h文件中引入即可使用。</p>
<p class="maodian"></p><h3>第二种:</h3>
<p>第一种方法的swiftframework会暴露oc的头文件,如果你的Objective-C文件和接口并不想暴露可以采用modulemap。</p>
<p class="maodian"></p><h4>1. 新建一个module.modulemap文件:</h4>
<p>创建一个.h文件修改名字和后缀即可。</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202206/2022062809454501.jpg" /></p>
<div class="jb51code"><pre class="brush:java;">module WFAVEngineKit {
header "./Pods/GOWFAVEngineKit/GOWFAVEngineKit/Frameworks/WFAVEngineKit.framework/Headers/WFAVEngineKit.h" export *
}
</pre></div>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202206/2022062809454502.jpg" /></p>
<p>注意:这里的路径是要使用的OC代码相对于modulemap文件的路径</p>
<p>(../上一级目录,./当前目录,/根目录)</p>
<p class="maodian"></p><h4>2.设置module.modulemap引用路径</h4>
<p>在build settings中搜索import paths,输入找到module.modulemap 的文件路径。</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202206/2022062809454503.jpg" /></p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202206/2022062809454504.jpg" /></p>
<p>我的这个module.modulemap文件是在根路径下,直接输入即可。</p>
<p class="maodian"></p><h4>3.import module</h4>
<p>swift在需要调用OC代码的地方直接import module名字</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202206/2022062809454501.jpg" /></p>
<p>以上就是swift framework使用OC 代码两种方式示例的详细内容,更多关于swift framework使用OC代码的资料请关注琼殿技术社区其它相关文章!</p>
<div class="art_xg">
<b>您可能感兴趣的文章:</b><ul><li>iOS底层实例解析Swift闭包及OC闭包</li><li>IOS开发Swift 与 OC相互调用详解</li><li>Swift协议Protocol介绍</li><li>Flutter iOS开发OC混编Swift动态库和静态库问题填坑</li><li>Framework中实现OC和Swift的混编方案</li></ul>
</div>
</div>
<!--endmain-->
頁:
[1]