UIWebView的加载方式及获得动态高度的方法
来源:互联网 发布:知乎手机端问题 编辑:程序博客网 时间:2024/05/02 16:18
UIWebView加载数据3种方法
1.- (void)loadRequest:(NSURLRequest *)request;
NSURL *url = [NSURL URLWithString:urlString]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; [self.webView loadRequest:request];
直接加载url地址。
2.- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;
如果获取到的是HTML字符串,可以用这个方法加载。
3.- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL
NSURL *url = [NSURL URLWithString:urlString]; NSData *data=[NSData dataWithContentsOfURL:url]; [self.webView loadData:data MIMEType:@"text/html" textEncodingName:@"GBK" baseURL:nil];
编码格式有GB2312、GBK、UTF-8等许多种,当url地址的编码格式比较特殊时,可以用这个方法加载。
UIWebView获得动态高度的方法
首先,需要生成持有一个一个webView
_webView=[[UIWebView alloc]initWithFrame:CGRectMake(0, 64, SCREEN_WIDTH, SCREEN_HEIGHT-64-49)]; _webView.delegate=self; _webView.scalesPageToFit = YES; [self.view addSubview:_webView]; NSURLRequest *request=[NSURLRequest requestWithURL:[NSURL URLWithString:urlString]]; [_webView loadRequest:request];实现它的代理方法,在- (void)webViewDidFinishLoad:(UIWebView *)webView里
#pragma UIWebViewDelegate- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{ return YES;}- (void)webViewDidStartLoad:(UIWebView *)webView{ NSLog(@"开始加载");}- (void)webViewDidFinishLoad:(UIWebView *)webView{ CGFloat webViewHeight = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"]floatValue]; //获取内容实际高度(像素) NSLog(@"%f",webViewHeight); NSLog(@"结束加载"); }- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{ NSLog(@"加载失败");}这里document.body.offsetHeight 可以用document.body.clientHeight和document.body.scrollHeight替换
还有一种方法
<span style="color:#3d464d;">- (void)webViewDidFinishLoad:(UIWebView *)webView{</span><div class="line number31 index30 alt2" style="list-style: none; line-height: 15.4px; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 14px; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; widows: 1; border: 0px !important; padding: 0px 1em !important; margin: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; white-space: pre !important; background-image: none !important;"><code class="java preprocessor" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important;"><span style="color: gray !important; white-space: pre;"></span><span style="color:#333333;">CGRect frame = webView.frame;</span></code></div><div class="line number32 index31 alt1" style="list-style: none; line-height: 15.4px; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 14px; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; widows: 1; border: 0px !important; padding: 0px 1em !important; margin: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; white-space: pre !important; background-image: none !important;"><span style="color:#333333;"><code class="java spaces" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial initial !important;"> </code><code class="java preprocessor" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important;">CGSize fittingSize = [webView sizeThatFits:CGSizeZero];</code></span></div><div class="line number33 index32 alt2" style="list-style: none; line-height: 15.4px; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 14px; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; widows: 1; border: 0px !important; padding: 0px 1em !important; margin: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; white-space: pre !important; background-image: none !important;"><span style="color:#333333;"><code class="java spaces" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial initial !important;"> </code><code class="java preprocessor" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important;">frame.size = fittingSize;</code></span></div><div class="line number34 index33 alt1" style="list-style: none; line-height: 15.4px; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace; font-size: 14px; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; widows: 1; border: 0px !important; padding: 0px 1em !important; margin: 0px !important; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; outline: 0px !important; overflow: visible !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; white-space: pre !important; background-image: none !important;"><span style="color:#333333;"><code class="java spaces" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important;"> </code><code class="java preprocessor" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace !important; font-size: 1em !important; background-image: none !important;">webView.frame = frame;</code></span></div><span style="color:#3d464d;">}</span>
0 0
- UIWebView的加载方式及获得动态高度的方法
- 动态获取UIWebView的高度
- 计算UIWebView加载网页的内容高度
- UIWebView根据contentSize动态设置UIWebView的高度
- 获得状态栏高度的方式
- UIWebView 加载网页的方法
- UIWebView加载网页、文件及html的方法
- 获取UIWebview的高度4种方法
- iOS 获得UIWebView的content高度,添加评论功能
- UIWebView的高度问题
- 获取UIWebView的高度
- 计算UIWebView的高度
- UIWebView 加载html 及自适应高度
- UIWebView的三种加载方式
- UIWebView加载缓存的4种方式
- UIWebView的三种加载方式
- UIWebView的三种加载方式
- UIWebView的三种加载方式
- perl自带的帮助手册
- 告诉大家如何将pdf转换成word文档格式
- Spring boot-jsp
- Android系统设置— android.provider.Settings
- spring 使用一般接口 返回数据null 的问题 解决
- UIWebView的加载方式及获得动态高度的方法
- Hadoop HDFS负载均衡
- Python Kmeans
- struct union and endian
- javascript笔记:javascript里面不同function定义的区别
- PHP三种安装方式静态模式、动态模式(DSO)、CGI二进制模式。
- el表达式保留两位小数、使用jstl <fmt:formatNumber>标签保留两位小数
- Windows中开启dump的方法
- Grails框架实现微信自定义分享页