Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将swift扩展添加到swift包_Swift_Xcode_Package - Fatal编程技术网

将swift扩展添加到swift包

将swift扩展添加到swift包,swift,xcode,package,Swift,Xcode,Package,我想将swift扩展名文件移动到swift包中。但是,在将文件移动到swift软件包后,我遇到了这样的错误: “类型'NSAttributedString'没有成员'makeUnderlineString'” 我们不能在swift包中添加swift扩展吗 更新: 最后,我解决了这个问题。我错过了几件事。这些是您在Swift包中使用扩展时必须做的。谢谢大家的评论 在“分机”前添加“公共” 公共扩展字符串{ 如果在本地编辑Swift包,请为Swift包创建方案 将Swift包添加到“目标->常规-

我想将swift扩展名文件移动到swift包中。但是,在将文件移动到swift软件包后,我遇到了这样的错误:

“类型'NSAttributedString'没有成员'makeUnderlineString'”

我们不能在swift包中添加swift扩展吗

更新:

最后,我解决了这个问题。我错过了几件事。这些是您在Swift包中使用扩展时必须做的。谢谢大家的评论

  • 在“分机”前添加“公共”

    公共扩展字符串{

  • 如果在本地编辑Swift包,请为Swift包创建方案

  • 将Swift包添加到“目标->常规->框架、库和嵌入式内容”中

  • 导入Swift包的目标。此处MyLibrary是Swift包中的目标名称

    导入我的图书馆


  • 尝试清理项目CMD+Shift+K,然后,如果必要时使用了“public”-关键字,它应该可以工作。

    尝试清理项目CMD+Shift+K,然后,如果是“public”-必要时使用关键字,它应该可以工作。

    您是否将扩展名
    公开
    ?您可以共享代码吗?您是否在测试目标中使用它?我的第一个猜测是@Sweeper所说的。始终为每个扩展名编写至少一个测试,不使用
    @testable
    ,以确保不会发生这种情况!谢谢大家,尤其是Sweeper。我有更新我用我找到的解决方案回答了这个问题。你把扩展名
    公开了吗
    ?你能分享代码吗?你在测试目标中使用它吗?我的第一个猜测是@Sweeper说的。每次扩展都至少写一个测试,没有
    @testable
    ,以保证不会发生这种情况!谢谢大家,特别是Sweeper。我已经更新了que用我找到的解决方案继续。