Это элемент управления, который я искал: 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)
I believe you are looking for GetIsInDesignMode, which takes a DependencyObject.
Ie.
// 'this' is your UI element
DesignerProperties.GetIsInDesignMode(this);
Edit: When using Silverlight / WP7, you should use IsInDesignTool
since GetIsInDesignMode
can sometimes return false while in Visual Studio:
DesignerProperties.IsInDesignTool
Edit: And finally, in the interest of completeness, the equivalent in WinRT / Metro / Windows Store applications is DesignModeEnabled
:
Windows.ApplicationModel.DesignMode.DesignModeEnabled
Вы можете сделать что-то вроде этого:
DesignerProperties.GetIsInDesignMode(new DependencyObject());