加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.52kongjun.com/)- 自然语言处理、云硬盘、数据治理、数据工坊、存储容灾!
当前位置: 首页 > 教程 > 正文

处理iOS11webview顶部空白条的问题

发布时间:2023-11-01 11:30:57 所属栏目:教程 来源:互联网
导读:   在 iOS 11 使用 webview 发现顶部会有一个空白条,怎么也去不掉,通过设置 contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever 就可以解决了,具体的代码如下
  在 iOS 11 使用 webview 发现顶部会有一个空白条,怎么也去不掉,通过设置 contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever 就可以解决了,具体的代码如下:
 
  //
 
  //  ViewController.m
 
  //  webView
 
  //
 
  //  Created by exchen on 18/7/14.
 
  //  Copyright © 2018年 exchen. All rights reserved.
 
  //
 
  #import "ViewController.h"
 
  @interface ViewController () <UIWebViewDelegate>
 
  @property(nonatomic, strong) UIWebView* webView;
 
  @end
 
  @implementation ViewController

  - (void)viewDidLoad {
 
      [super viewDidLoad];
 
      // Do any additional setup after loading the view, typically from a nib.
 
      CGRect screen = [[UIScreen mainScreen] bounds];      
 
      //添加 UIWebView
 
      self.webView = [[UIWebView alloc] initWithFrame: CGRectMake(0, 0, screen.size.width, screen.size.height)];
 
      [self.view addSubview: self.webView];
 
      NSURL * url = [NSURL URLWithString: @"https://www.exchen.net"];
 
      NSURLRequest * request = [NSURLRequest requestWithURL:url];
 
      [self.webView loadRequest:request];
 
      self.webView.delegate = self;
        
      //解决 iOS 11 屏幕顶部显示不全
 
      if ([[UIDevice currentDevice].systemVersion floatValue] >= 11.0) {
 
          self.webView.scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
 
      }
 
  }
 
  - (void)didReceiveMemoryWarning {
 
      [super didReceiveMemoryWarning];
 
      // Dispose of any resources that can be recreated.
 
  }
 
  - (void)webViewDidStartLoad:(UIWebView *)webView {
 
      NSLog(@"%@",NSStringFromSelector(_cmd));
 
  }
 
  //加载失败时调用
 
  - (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
 
      NSLog(@"%@",NSStringFromSelector(_cmd));
 
      NSLog(@"error: %@",error); 

      UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"信息" message:@"连接服务器失败,请检查网络" preferredStyle:UIAlertControllerStyleAlert];
 
      UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action){
 
          exit(0);
 
      }];
 
      [alertController addAction:cancelAction];
 
      [self presentViewController:alertController animated:YES completion:nil];
 
  }
 
  - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
 
      return true;
 
  }

  @end
 

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章