Как запретить расширение для экспорта в заголовок Swift для Objective-C?

Я сделал это простое расширение в Swift:

extension DispatchQueue { func asyncAfter(delay: TimeInterval, block: @escaping ()->()) { DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + Double(Int64(delay * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC), execute: block) } } 

В заголовке Project-Swift.h он сообщает об ошибке в этой строке:

 @interface OS_dispatch_queue (SWIFT_EXTENSION(...)) - (void)asyncAfterDelay:(NSTimeInterval)delay block:(void (^ _Nonnull)(void))block; @end 

Ошибка: не удается найти объявление интерфейса для «OS_dispatch_queue»

Есть ли способ предотвратить расширение экспорта для Objective-C? Или есть способ исправить ошибку?

2 Solutions collect form web for “Как запретить расширение для экспорта в заголовок Swift для Objective-C?”

Я знаю, что это не ответ для каждого, но я сталкиваюсь с той же проблемой, используя общедоступное расширение DispatchQueue: dispatch_once после изменения API Swift 3 GCD

Так что в моем случае использование решения от Vlad помогло мне избежать этой постоянной проблемы: https://stackoverflow.com/a/41570198/1672521

Вы можете использовать @objc перед func или method чтобы предотвратить экспорт для объектного C, как @objc ниже.

 extension DispatchQueue { @objc func asyncAfter(delay: TimeInterval, block: @escaping ()->()) { DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + Double(Int64(delay * Double(NSEC_PER_SEC))) / Double(NSEC_PER_SEC), execute: block) } } 
  • Сделать приложение «Ион» в списке «Поделиться» и получить данные
  • Swift ожидаемый тип Array <_>
  • AFNetworking 3.1.0 и группы отправки
  • Внедрить протокол Swift с использованием объекта Objective-C getter
  • ReactiveCocoa 4: Как отправить ошибку наблюдателю без прерывания сигнала
  • ionic3 - Ошибка Apple Mach -O Linker (Id)?
  • Phonegap navigator.camera.getPicture () не работает внутри функции «requirejs»
  • DynamicProperty vs MutableProperty против AnyProperty vs ConstantsProperty
  • Interesting Posts

    Положение моего UIButton варьируется для всех симуляторов

    Как рассчитать правильную ширину для сегментов UISegmentedControl?

    Что является хорошим регулярным выражением для выделения синтаксиса комментариев?

    Ищите более чистый способ выполнения этой функции поиска

    Что означает: subodules => true mean в CocoaPod Podspec?

    Отладка приложения PhoneGap, работающего в эмуляторе, с помощью WebStorm

    Загрузить изображение на сервер с устройства iOS

    Проблема с ограничениями автоматической компоновки на iOS7 в UITableViewCell

    Лучшая архивная библиотека для iOS

    PJSIP: сбой на pj_sockaddr_get_port при перемещении приложения iOS в фоновом режиме, а затем на переднем плане

    MapKit в iOS 8 и Swift

    iOS6 – При покупке приложения с загрузкой с сервера Apple

    PageViewController – передача переменных в дочерние представления

    didUpdateHeading не вызывается

    Этот класс не подходит для кодирования ключевых слов для ключевого ярлыка

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.