我正在尝试使用iOS Swift检测外部显示器。第二个显示器与Lightning数字AV适配器连接。我已经进口了UIKIt。当我运行screen.count下面的代码时,即使我已经连接了第二个屏幕并启动镜像,我也会启动应用程序。
override func viewDidLoad() {
super.viewDidLoad()
// Initialize an external screen if one is present
let screens = UIScreen.screens
print(screens.count)
txtDisplay.text = String(screens.count)
if screens.count > 1 {
print("A second screen has been detected")
//An external screen is available. Get the first screen available
//self.initializeExternalScreen(externalScreen: screens[1] as UIScreen)
}
}
我已经加载了声称具有此功能的演示应用程序,但我得到了相同的结果。有关如何使用Swift检测第二个显示的任何想法吗?
由于
答案 0 :(得分:1)
屏幕数组中未显示镜像屏幕。而是使用主屏幕mirroredScreen属性
<强>更新强>
let mirrored = UIScreen.main.mirrored
self.initializeExternal(external: mirrored)
答案 1 :(得分:0)
我发现如果我设置通知,UIScreen.screens.count只会确认外部第二个屏幕。一旦我在NotificationCenter中设置观察员,我终于得到了UIScreen.screens.count&#39;到== 2.然后我就可以将视图分配给UIScreen.screens 1
此页面包含详细信息: http://tutorials.tinyappco.com/Swift/AdditionalScreen