umbrella header-iOSframework或更高版本library上Objective-C的头文件可以包含对该项目中所有其他头的引用。
创建目标框架时,Xcode将自动生成<targer_name.h>文件。它应该与Product Name
Build Settings:
Product Name -默认值为 $(TARGET_NAME:c99extidentifier)
Product Module Name -默认值为 $(PRODUCT_NAME:c99extidentifier)
例如<umbrella_name.h>看起来像
#import "header_1.h"
#import "header_2.h"
结果,您可以使用下一个语法
#import <umbrella_name.h>
代替
#import <header_1.h>
#import <header_2.h>
此外umbrella header,还需要通过典型module map 结构[关于] [手动创建]
在实践中,当您Framework在Objective-C[示例]或Swift[示例]上创建此文件时,将使用<product_name>
导入Objective-C到Swift一个框架内的目标
在伞状标题中,导入要公开给Swift的每个Objective-C标题。
Swift会在您的伞形标题中看到您公开公开的每个标题。该框架中的Objective-C文件的内容可从该框架目标内的任何Swift文件中自动获得,而无需导入语句。使用与系统类相同的Swift语法,使用Objective-C代码中的类和其他声明。