Ошибка при обнаружении модуля при импорте модуля Swift в проект Objective-C

У меня есть существующий проект, который написан на Objective-C. Я хочу использовать в этом проекте библиотеку iOS Charts от Daniel Gindi, которая находится в Swift. Как мне этого добиться?

Импорт Swift Framework в проект Objective-C связан, но в моем случае я использую библиотеку, устанавливая ее через Cocoapods, как указано здесь.

В этом вопросе он по крайней мере может импортировать заголовок, но в моем случае я не могу.

Шаг 1: Создайте проект Objective-C для одного представления.

Шаг 2: Создайте Podfile и добавьте следующие строки -

use_frameworks!
pod 'Charts'

Шаг 3: Установите модуль

Шаг 4. Попробуйте импортировать диаграммы в ViewController.h @import Charts но это дает ошибку на этом этапе. Ошибка - Module Charts not found

3 ответа

Решение

В моем существующем проекте я сделал #include Charts-Swift.h в моем проекте main.m файл и это решило проблему от меня. @import Charts работал отлично сейчас. Это было сделано в соответствии с инструкциями, которые написаны в документации Apple здесь.

Я сделал новый проект и попробовал ответ Anni S, на этот раз я построил проект с cmd+B перед написанием любого импорта, и это тоже сработало. Я полагаю, что его нужно собирать один раз после установки модуля и перед импортом любого модуля.

Я попытался сделать то же самое, что вы упомянули в комментарии, однако я не получил ошибку, которую вы получили. Мой проект просто собирается и запускается. Шаги, которым я следовал:

  1. Создать Objective-C единый вид проекта.
  2. Добавлен 'Podfile' на уровне каталога проекта (Podfile должен быть на уровне файла xcodeproject) и добавить следующие строки
use_frameworks!
pod 'Charts'
  1. Закрыть xcodeproject
  2. Перейдите в каталог проекта и запустите 'pod install' команда из терминологии
  3. Открытое рабочее пространство, т.е. файл.xcworkspace
  4. Импортируйте файл диаграмм в контроллер вида, например

#import "ViewController.h" @import Charts;

Я нашел причину, почему это работает для нового проекта, но для существующего проекта.

В настройках проекта удалите значение свойства "Другие флаги компоновщика".

Это большинство случаев, когда большинство разработчиков скучают.

Другие вопросы по тегам