Предупреждение о импортированной декларации в Xcode 11

Когда я запускаю свой код, Xcode 11 показывает некоторые предупреждения, например:

<unknown>: 0: предупреждение: импортированное объявление "UITableViewDiffableDataSourceCellProvider" не может быть сопоставлено с "UITableViewDiffableDataSourceReference.CellProvider"
<unknown>: 0: предупреждение: импортированное объявление "UICollectionViewDiffableDataSourceCellProvider" не может быть сопоставлено с "UICollectionViewDiffableDataSourceReference.CellProvider".

Как я могу решить эти предупреждения?

Я запускаю свой код в Xcode 11, и он хорошо работает в Xcode 10.

Нет кода Если хочешь, я могу показать, что ты хочешь.

Я хочу решить эти предупреждения.

Ответ 1

Перейдите: "Настройки"> "Расположение"> "Инструменты командной строки" [выпадающий список]. Выберите: Последняя версия XCode 11.0 (...)

Ответ 2

Очистите папку сборки и перестройте.

Ответ 3

Странный обходной путь, который работает для меня, состоит в том, чтобы сначала скомпилировать проект, выбрав более старый симулятор (в моем случае 10.3.1). После успешного завершения сборки вы можете выбрать и запустить приложение на любом симуляторе iOS 13.

🤷♂️

Ответ 4

Command + Shift + K решит проблему.

Ответ 5

В моем случае это 2 способа избавиться от этого предупреждения:

  1. Установите симулятор на iPhone Xs перед сборкой приложения, это всего лишь обходной путь.

  2. Если ваш код импортирует UIKit с помощью "import" в Swift или "#import" в OC, и действительно UITableViewDiffableDataSourceCellProvider и другие 2 модуля не развернуты вашим кодом, то попробуйте заменить "#import" на "@import UIKit;" в OC, а "@import UIKit" - в быстром. Потому что "@import" позволяет импортировать только те модули, которые действительно используются вашей реализацией.

Ответ 6

Попробуйте прокомментировать #import <UIKit/UIDiffableDataSource.h> в заголовке UIKitCore.h. Помог мне.