方法一:

在html文件内直接使用file:///user//xx//image.png的绝对路径

注:这样可以显示图片,但是如果在程序目录修改,图片就不能显示

方法二:

在html使用占位符,如:在html内使用<image src="file:/[myimage]" height="200" width="320">

在加载html文本的时候,replace这个占位符

代码如下:

string htmlpath=Path.GetFullPath("Docs/Detail.html");//根据html的相对路径获取html文件的绝对路径

string htmltext=File.OpenText(htmlpath).ReadToEnd();//读取html的内容

string  imagepath=Path.GetFullPath("Images/image.png").Replace("/","//").Replace(" ","%20");//读取图片的绝对路径后替换掉单斜杠和空格

htmltext=htmltext.Replace("[myimage]",imagepath);//将html内容内的image占位符替换成正确的路径

webview.LoadHtmlString(htmltext,null);//webview加载html内容

注:如果图片过多则处理很麻烦,只能做例子写写,不能真正使用

方法三:

使用webview.LoadHtmlString(htmltext,BaseUrl);//BaseUrl:sets the main page content and  base Url

在方法三中,我们在html文件中图片地址只用使用相对地址了 <image src="Images/image.png" height="200" width="320">

代码:

NSUrl BaseUrl=new NSUrl(Path.GetFullPath("."),true);//获取程序的根目录路径

webview.LoadHtmlString(htmltext,BaseUrl);//使用此重载方法的时候,图片的路径或自动处理成BaseUrl+image.src,这样图片就能正常显示了

例如:

UIWebView *twoWebView =[[UIWebView alloc]initWithFrame:CGRectMake(, , , )];

jsString = [NSStringstringWithFormat:@"<html> \n"

"<head> \n"

"<style type=\"text/css\"> \n"

"body {font-size:%fpx; line-height:%fpx;background-color: transparent;}\n"

"</style> \n"

"</head> \n"

"<body>%@</body> \n"

"</html>",  fontSize ,line_height,htmlText];

NSURL *urlBai=[NSURLURLWithString:@"http://42.96.192.186"];

[showWebView loadHTMLString:jsString baseURL:   urlBai];

[webView addSubview:twoWebView];

注:在使用次方法的时候,html更容易处理,程序也容易处理

综述:在以上三种方法种,第三种方法最优

IOS UIwebView 加载网络图片 使用相对地址的更多相关文章

  1. ios UIWebView加载HTMLStr图文,关于图片宽高设置,webView内容实际高度的踩坑问题

    一.关于UIWebView 与 WKWebView 选取问题 从发布时间看: 2008年7月11日,在新一代iPhone3G正式发售当天,iPhone OS 2.0(iOS 2.0)推出,这时候就有U ...

  2. iOS UIWebView 加载进度条的使用-WKWebView的使用,更新2017.6.26

    1.由于项目中加载网络插件,直接使用了webview加载.使用了三方NJKWebViewProgress进度条的使用,近期在测试时发现,网络缓慢时出现白屏,有卡顿现象. 于是采用了WKWebView进 ...

  3. IOS延时加载网络图片

        重网上下载图片是很慢的,为了不影响体验,选择延时加载图片是很好的办法. 一个tableView 列表,左边暂时没有图 - (UITableViewCell *)tableView:(UITab ...

  4. 关于iOS UIWebView 加载网页,点击网页内某些控件导致 Application 'UIKitApplication:xxx.xxx.xxx' was killed by jetsam.

    问题:公司用的腾讯问卷系统,内嵌在我们应用或游戏的自定义UIWebView里面展示,发现在iOS 10 以下系统,点击圆形勾选框 会大概率出现闪退. 通过联调发现:报了这样一个警告Applicatio ...

  5. iOS UIWebView加载时添加进度条

    标注:此框架仅适合UIWebView  对iOS8后新出的WKWebView不适用,当然,你可以尝试修改框架里的几个代理方法. 框架是:NJKWebViewProgress 导入头文件 #import ...

  6. iOS UIWebView加载时添加进度条01

    标注:此框架仅适合UIWebView  对iOS8后新出的WKWebView不适用,当然,你可以尝试修改框架里的几个代理方法. 框架是:NJKWebViewProgress 导入头文件 #import ...

  7. 【iOS进阶】UIWebview加载搜狐视频,自动跳回客户端 问题解决

    UIWebview加载搜狐视频,自动跳回搜狐客户端 问题解决 当我们用UIWebview(iOS端)加载网页视频的时候,会发现,当真机上有搜狐客户端的时候,会自动跳转到搜狐客户端进行播放,这样的体验对 ...

  8. 【iOS系列】-UIWebView加载网页禁止左右滑动

    [iOS系列]-UIWebView加载网页禁止左右滑动 问题: 做项目时候,用UIWebView加载网页的时候,要求是和微信网页中打开的网页的效果一样,也即是只能上下滑动,不能左右滑动,也不能缩放. ...

  9. ios UIImageView异步加载网络图片

    方法1:在UI线程中同步加载网络图片 UIImageView *headview = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 40, 4 ...

随机推荐

  1. HD2029

    Palindromes _easy version Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/O ...

  2. IAP内购

    IAPHelper.h // // IAPHelper.h // airplay // // Created by apple on 13-10-23. // Copyright (c) 2013年 ...

  3. PetaPoco 笔记

    PetaPoco是一款适用于.Net 和Mono的微小.快速.单文件的微型ORM. PetaPoco有以下特色: 微小,没有依赖项--单个的C#文件可以方便的添加到任何项目中. 工作于严格的没有装饰的 ...

  4. 一个人写的操作系统 - Sparrow OS

    一个人写的操作系统 - Sparrow OS 自己写一个操作系统,这是在过去的几年里我一直为之努力的目标,现在终于完成了. 缘起 自己动手写操作系统的动机最初来自于学习Linux遇到的困难. 我是一个 ...

  5. DbHelperSQL和Dapper数据访问的性能对比

    http://www.cnblogs.com/finesite/archive/2012/08/23/2652491.html

  6. VC++ 中滑动条(slider控件)使用 [转+补充]

    滑动控件slider是Windows中最常用的控件之一.一般而言它是由一个滑动条,一个滑块和可选的刻度组成,用户可以通过移动滑块在相应的控件中显示对应的值.通常,在滑动控件附近一定有标签控件或编辑框控 ...

  7. spring-flex

    mvn install:install-file -Dpackaging=jar -DgroupId=com.adobe.blazeds -Dversion=4.0.0.14931 -Dartifac ...

  8. Sublime Text 2 快捷键大全

    Ctrl+L 选择整行(按住-继续选择下行) Ctrl+KK 从光标处删除至行尾 Ctrl+Shift+K 删除整行 Ctrl+Shift+D 复制光标所在整行,插入在该行之前 Ctrl+J 合并行( ...

  9. myeclipse 10 载入新的项目报错Cannot return from outside a function or method

    myeclipse 10 载入新的项目报错Cannot return from outside a function or method 解决方法: 方法一: window -->prefere ...

  10. AJAX在Post中文的时候乱码的解决方法

    加上设置字符编码的方法: response.setHeader("charset","gb2312"); *************************** ...