int nMonths = 0;
if (FDate.ToDateTime().Year == TDate.ToDateTime().Year)
nMonths = TDate.ToDateTime().Month - FDate.ToDateTime().Month;
else
nMonths = (12 - FDate.Month) + TDate.Month;
Это элемент управления, который я искал: https://developer.apple.com/documentation/avkit/avroutepickerview . Он отображается на экране в виде кнопки (со значком AirPlay 2 по умолчанию) и обрабатывает всю логику за вас.
Пример
import AVKit
let audioPicker = AVRoutePickerView(frame: ...)
addSubview(audioPicker)
Вы можете подписаться на обновления аудио-маршрута с помощью следующего:
NotificationCenter.default.addObserver(self, selector: ...), name: AVAudioSession.routeChangeNotification, object: nil)