在 Swift 中禁用第三方键盘



>假设

我正在将 SFSafari 与 Swift 配合使用,但在第三方键盘上打字时遇到问题,因此我想使用标准(强化(键盘。

附录1:清除Safari的缓存后,仅在下次启动时修复,但无法清除缓存。 .. ..

附录2:使用键盘打开另一个没有移动的应用程序,然后再次返回,可以输入。 里面发生了什么...此事件会故意发生吗?

您遇到的问题

我想做的和【Swift】 カスタムキーボードを無効化する, 似乎App Delegate无法在iOS 13或更高版本上使用,所以我像Scene Delegate一样编写了它,但是没有发生错误,但是即使您执行它,也会出现第三方的冻结键盘。

适用的源代码

网站上的代码

func application (_ application: UIApplication, shouldAllowExtensionPointIdentifier extensionPointIdentifier: UIApplicationExtensionPointIdentifier)-> Bool (
     if extensionPointIdentifier == .keyboard {
         return false
     }
     return true
}

在 Scenne Delegate 中重写的代码

func scene (_ scene: UIScene, willConnectTo session: UISceneSession, options a: UIApplication.ExtensionPointIdentifier)-> Bool (
         if a == .keyboard {
             return false
         }
         return true
     }

我尝试了什么

AppDelegate 是通过查看此处来执行的。 (删除了场景委托(=> 由于停电,它停止正常工作。

有几种不同的方法可以错误地编写场景((的内容,所以我尝试了一下。

附加信息(固件/刀具版本等(

XCode11.4.1

基本上我能够做到这一点。但是我不知道如何使用SFSafariViewController弄乱键盘,所以我使用了WKWebView。(我使用 SFSafari 是因为我有一个错误,以前无法使用它。 您应该稍微更改换行符。

最新更新