这篇文章将为大家详细讲解有关iOS中怎么去除Webview键盘顶部工具栏,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
UIWebView,可以使用[self hideKeyboardShortcutBar:self.webView]
去掉工具栏。
- (void) hideKeyboardShortcutBar: (UIView *)view { for (UIView *sub in view.subviews) { [self hideKeyboardShortcutBar:sub]; if ([NSStringFromClass([sub class]) isEqualToString:@"UIWebBrowserView"]) { Method method = class_getInstanceMethod(sub.class, @selector(inputAccessoryView)); IMP newImp = imp_implementationWithBlock(^(id _s) { if ([sub respondsToSelector:@selector(inputAssistantItem)]) { UITextInputAssistantItem *inputAssistantItem = [sub inputAssistantItem]; inputAssistantItem.leadingBarButtonGroups = @[]; inputAssistantItem.trailingBarButtonGroups = @[]; } return nil; }); method_setImplementation(method, newImp); } } }
WkWebView
WkWebView,可以使用[self hideWKWebviewKeyboardShortcutBar:self.webView]
去掉工具栏。
// 步骤一:创建一个 _NoInputAccessoryView @interface _NoInputAccessoryView : NSObject @end @implementation _NoInputAccessoryView - (id)inputAccessoryView { return nil; } @end // 步骤二:去掉 WkWebviewe Done 工具栏 - (void) hideWKWebviewKeyboardShortcutBar:(WKWebView *)webView { UIView *targetView; for (UIView *view in webView.scrollView.subviews) { if([[view.class description] hasPrefix:@"WKContent"]) { targetView = view; } } if (!targetView) { return; } NSString *noInputAccessoryViewClassName = [NSString stringWithFormat:@"%@_NoInputAccessoryView", targetView.class.superclass]; Class newClass = NSClassFromString(noInputAccessoryViewClassName); if(newClass == nil) { newClass = objc_allocateClassPair(targetView.class, [noInputAccessoryViewClassName cStringUsingEncoding:NSASCIIStringEncoding], 0); if(!newClass) { return; } Method method = class_getInstanceMethod([_NoInputAccessoryView class], @selector(inputAccessoryView)); class_addMethod(newClass, @selector(inputAccessoryView), method_getImplementation(method), method_getTypeEncoding(method)); objc_registerClassPair(newClass); } object_setClass(targetView, newClass); }
关于iOS中怎么去除Webview键盘顶部工具栏就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。