Swift 4 CADisplayLink без @objc

В Swift 4 мы начинаем получать предупреждения при использовании @objc func, и я понимаю, что на самом деле лучше этого избегать. Мне нужно создать точный таймер для анимации, например CADisplayLink. Проблема в том, что CADisplayLink использует #selector, и для его использования мне нужно создать @objc func. Есть ли альтернатива для него в Swift 4?


person Damian Dudycz    schedule 09.06.2017    source источник
comment
Какое предупреждение вы получаете? Нет ничего плохого в объявлении функций как @objc, если вам нужно, чтобы они были видны для Objective-C.   -  person Ole Begemann    schedule 09.06.2017
comment
См. stackoverflow.com/a/44391389/116862.   -  person Ole Begemann    schedule 09.06.2017
comment
@objc вывод, объявленный устаревшим, не означает, что есть что-то устаревшее или неправильное в предоставлении доступа к определенным функциям ObjC. Особенно, если вам нужно использовать шаблоны/API (например, CADisplayLink), для которых требуются селекторы ObjC. То, о чем идет речь, становится более ясным, когда вы намереваетесь выставить что-то для ObjC, а не платить за производительность за неявное раскрытие всего.   -  person rickster    schedule 11.06.2017