iOS中怎么去除Webview键盘顶部工具栏-创新互联

这篇文章将为大家详细讲解有关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键盘顶部工具栏就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站名称:iOS中怎么去除Webview键盘顶部工具栏-创新互联
分享链接:http://pwwzsj.com/article/ddggpj.html