iOS 9 iPad 键盘摆脱“撤消视图”

Posted

技术标签:

【中文标题】iOS 9 iPad 键盘摆脱“撤消视图”【英文标题】:iOS 9 iPad Keyboard get rid of "undo view" 【发布时间】:2015-12-16 15:59:46 【问题描述】:

如何摆脱 ios 9 中 iPad 上显示的这种烦人的“撤消视图”。

下面是我自己的键盘,上面是我的附件视图。 (仅用于这种丑陋颜色的测试目的)。有人可以告诉我如何删除它吗?提前致谢。

【问题讨论】:

试试这个***.com/questions/32606655/… 如果您查找有关此的更多信息,“撤消视图”被称为“快捷方式”栏。它的设计目的是让程序员可以在键盘上添加自己的快捷键,尽管我还没有看到很多。 【参考方案1】:

对于 Swift 2.0,您可以将此代码放在 viewDidLoad 中,它会像魅力一样工作。

if #available(iOS 9.0, *) 
    let item = yourTextView.inputAssistantItem
    item.leadingBarButtonGroups = []
    item.trailingBarButtonGroups = []
 else 
    // Fallback on earlier versions

在 Swift 3.0 和 4.0 中

youtTextField.inputAssistantItem.leadingBarButtonGroups.removeAll()
yourTextField.inputAssistantItem.trailingBarButtonGroups.removeAll()

然而,最好的使用方法是继承一个 UITextfield 并在 init() 阶段使用上面的代码。或者创建一个扩展而不是在 viewDidLoad 中为每个 textField 使用它。

【讨论】:

仅供参考,您需要在每个 UITextView 或 UITextField(基本上是弹出键盘的任何内容)上调用它,因为每个输入字段都有自己的 UITextInputAssistantItem。 是的,tenaciousJay 确实如此,这是我目前唯一的解决方案,因为我仍在探索 IOS9 和 swift 2.0 该代码 sn-p 导致内存泄漏。用 XCode Instrument (Leak) 试试吧【参考方案2】:

这是 Objective-C 中的代码:

if (@available(iOS 9.0, *)) 
    UITextInputAssistantItem* item = yourTextView.inputAssistantItem;
    item.leadingBarButtonGroups = @[];
    item.trailingBarButtonGroups = @[];

【讨论】:

以上是关于iOS 9 iPad 键盘摆脱“撤消视图”的主要内容,如果未能解决你的问题,请参考以下文章

iOS:在 iPad 模式视图中获取键盘点的顶部?

iOS 14 SwiftUI 键盘自动提升视图

iOS - 如何关闭键盘?

滚动 UIScrollView 以适应 iOS 中的键盘

iOS移动开发周报 - iOS 9 SDK 暗示新款 iPad

点击文本字段时用选择器视图替换键盘(Swift、Storyboard、iOS 9、Xcode 7)