如何在iOS9 UIWebview中隐藏快捷工具栏?

时间:2015-09-24 20:14:17

标签: uiwebview ios9

当用户点击 UIWebView 中的文本字段时,我想隐藏键盘顶部的栏(撤消,重做,复制和后退,前进按钮)。

有人知道怎么做吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

使用方法swiziling我们可以删除键盘快捷键(仅适用于ObjC)。

 - (void)hideKeyboardShortcutBar
    {
        Class webBrowserClass = NSClassFromString(@"UIWebBrowserView");
        Method method = class_getInstanceMethod(webBrowserClass, @selector(inputAccessoryView));

        IMP newImp = imp_implementationWithBlock(^(id _s) {
            if ([self.webView respondsToSelector:@selector(inputAssistantItem)]) {
                UITextInputAssistantItem *inputAssistantItem = [self.webView inputAssistantItem];
                inputAssistantItem.leadingBarButtonGroups = @[];
                inputAssistantItem.trailingBarButtonGroups = @[];
            }
            return nil;
        });

        method_setImplementation(method, newImp);
    }
  

<强> inputAccessoryView   :此属性通常用于将附件视图附加到   系统提供的键盘,为UITextField和   UITextView对象。

因此,每次键盘弹出时都会触发新的实现块。

我在Hide shortcut keyboard bar for UIWebView in iOS 9也发布了这个答案

答案 1 :(得分:0)

我能够隐藏那些使用这些行的人

        let item:UITextInputAssistantItem = self.textFieldName.inputAssistantItem
        item.leadingBarButtonGroups = []
        item.trailingBarButtonGroups = []

希望这会有所帮助。