UIApplication.shared.keyWindow?.addSubview(self.backgroundImage)
我会试试这个:
let windowCount = UIApplication.shared.windows.count
UIApplication.shared.windows[windowCount-1].addSubview(self.backgroundImage)
无
我用键盘打字,然后按主页按钮。当我返回应用程序时,我只需要显示背景图像,但应用程序在背景图像前面显示键盘
最佳答案
包含键盘的窗口是单个窗口,级别高于keyWindow。所以你在 keyWindow 中的 self.backgroundImage
不能覆盖键盘。
建议:
在应用进入后台时调用 window.resignFirstResponder()
。
更好的方法:
如果它正在显示,请将您的背景图像添加到键盘窗口
if let keyboardWindow = applicationKeyboardWindow {
keyboardWindow.addSubview(self.backgroundImage)
}
var applicationKeyboardWindow: UIWindow? {
var windows = UIApplication.shared.windows.filter { win -> Bool in
let descri = String(describing: type(of: win))
return descri == "UITextEffectsWindow" || descri == "UIRemoteKeyboardWindow"
}
windows.sort(by: { $0.windowLevel > $1.windowLevel } )
return windows.first
}
关于ios - 如何在后台应用程序时在键盘前面显示keyWindow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58705858/