If MyFramework contains Objective-C classes in its public headers (and the umbrella header), then import MyFramework is all that’s necessary to use them from Swift.

Bridging headers

A bridging header makes additional Objective-C and C declarations visible to Swift code. When adding project files, Xcode may offer to create a bridging header automatically:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/67b4e9b1-d494-407a-b383-e5d30dabe395/Untitled.png

bridging header dialog

To create one manually, modify the Objective-C Bridging Header build setting:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e999ad12-62ee-47f2-846f-c7913327726f/Untitled.png

Inside the bridging header, import whichever files are necessary to use from code:

// MyApp-Bridging-Header.h
#import "MyClass.h"  // allows code in this module to use MyClass

Generated Interface

Click the Related Items button (or press ⌃1), then select Generated Interface to see the Swift interface that will be generated from an Objective-C header.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/84cb95b5-a9db-4372-9ee4-15995735f920/Untitled.png