Я пытаюсь добавить библиотеки Objective-C в свой проект Swift 3 (Xcode 8 IDE). Но заголовок интерфейса target c не генерируется автоматически. Я попытался добавить заголовок моста вручную, но показал ошибку связывания, говорящую о том, что заголовок моста .h не найден. Любая помощь будет оценена по достоинству :)
Заголовок моста Objective-C не создается с помощью Xcode 8
Ответы (5)
Здесь решение проблемы.
- Создайте новый файл заголовка и назовите его, например, "название вашего проекта-Bridging-Header.h". Файл должен быть сохранен в папке вашего проекта
- Выберите свой проект xcode -> выберите цель сборки -> выберите параметры сборки -> щелкните параметр «все» вверху -> найдите Swift Compiler — General.
- Выберите элемент Заголовок моста Objective-C и дважды щелкните поле его значения (справа от той же строки). Появится одно всплывающее окно, и там вы можете ввести путь к файлу заголовка моста (выполните следующие шаги, чтобы указать путь к файлу заголовка).
Откройте Finder и перетащите файл заголовка моста во всплывающее окно. Теперь он создаст абсолютный путь для заголовка моста. Чтобы сделать связанный путь, вы можете указать путь как $(PROJECT_DIR)/$(PROJECT_NAME)/$(PROJECT_NAME)-Bridging-Header.h
Нажмите снаружи, чтобы сохранить значение. Готово!! Теперь вы можете импортировать свои библиотеки Objective-C (например, #import "SVProgressHUD.h") в файл моста и начать использовать его в своем быстром проекте.
Надеюсь, это будет полезно для кого-то. :)
Этапы создания файла заголовка Objective C
Файл -> Создать -> Файл -> Файл заголовка
Назовите файл заголовка следующим образом: yourAppName-Bridging-Header.
Теперь нажмите на свой Проект -> Настройки сборки.
Изменить с Базовый на Все
Поиск Мост
Вы получите результат поиска, как показано на изображении ниже.
после добавления
В этом случае дважды щелкните справа от Заголовок моста Objective-C и введите следующее:
например, yourAppName/yourAppName-Bridging-Header.h
Вам нужно импортировать следующим образом
- Это все
Удачного кодирования :)
Примечание:
Заголовочный файл должен находиться непосредственно внутри проекта, т.е. он не должен создаваться внутри какой-либо подпапки
Кажется, проще всего просто создать новый файл Objective-C, а Xcode позаботится обо всех мелочах настройки всего. Как только это будет сделано, вы можете удалить файл Objective-C.
- Щелкните правой кнопкой мыши в проводнике проекта и выберите новый файл.
- Выбранный файл Objective-C
- Назовите это
delete_me
или что-то в этом роде. - Вам будет предложено создать файл моста и сказать «да».
- Удалите созданный вами файл (возможно,
delete_me.m
)
В случае нескольких целей убедитесь, что классы swift являются членами этой цели, иначе файл не будет создан.
Xcode 8.3
Свифт 5
Простой способ
1--cmd+n
then select
2--Objective-C File (name your file it like this YourAppName-Bridging-Header)
if popup arrive for bridging header then select
3--YES
if not
//MARK:-click on your
4--Project->BuildSettings
//MARK:- in search
5--Bridging Header
6--Double click and paste bottom line and done
$(PROJECT_DIR)/$(PROJECT_NAME)/$(PROJECT_NAME)-Bridging-Header.h