嗨,我现在不在家,所以我无法提供任何代码,所以我将尽力解释我的问题。
在我的ios应用程序中,我尝试使用photoswipe实现图像库,该图像库将根据uitableview中选择的餐厅显示不同的图像。
为了测试这一点,我已经在主捆绑包中导入了所有必要的html,javascript,css文件,然后在uiwebview中加载了index.html文件。目前,图库正在为每个选择的餐厅显示相同的图像,因为index.html文件包含指向某些测试图像的静态url链接,如下所示:
<!DOCTYPE html>
<html>
<head>
<title>PhotoSwipe</title>
<meta name="author" content="Ste Brennan - Code Computerlove -http://www.codecomputerlove.com/" />
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<link href="styles.css" type="text/css" rel="stylesheet" />
<link href="../photoswipe.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="../lib/klass.min.js"></script>
<script type="text/javascript" src="../code.photoswipe-3.0.5.min.js"></script>
<script type="text/javascript">
(function(window, PhotoSwipe){
document.addEventListener('DOMContentLoaded', function(){
var
options = {},
instance = PhotoSwipe.attach( window.document.querySelectorAll('#Gallery a'), options );
}, false);
}(window, window.Code.PhotoSwipe));
</script>
</head>
<body>
<div id="MainContent">
<ul id="Gallery" class="gallery">
<!-- ---------------------------LOOK HERE------------ -->
<li><a href="TEST IMAGE 1 URL"><img src="THUMBNAIL TEST IMAGE 1 URL" alt="Image 001" /></a></li>
<li><a href="TEST IMAGE 2 URL"><img src="THUMBNAIL TEST IMAGE 2 URL" alt="Image 002" /></a></li>
</ul>
</div>
</body>
</html>
无论如何,是否将nsstring注入此本地html文件,该文件包含指向所选相对餐厅的链接?
我尝试使用
stringByEvaluatingJavaScriptFromString
覆盖ID为“Gallery”的<ul>
的html内容,但这会减慢将图像输出到缩略图网格的过程。有没有一种方法可以实时编辑本地index.html文件?
最佳答案
您可以使用NSString方法stringWithContentsOfFile:encoding:error:
获取html文件的全部内容,对其进行编辑,然后使用writeToFile:atomically:encoding:error:
将其重新设置。或者,可以使用NSFileHandle方法进行更底层的访问。
编辑:
要获取文件目录:
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
然后将您的文件名附加到它。
NSString *htmlFilePath = [documentsPath stringByAppendingPathComponent:@"index.html"];
并使用上述路径作为
writeToFile:atomically:encoding:error:
的参数关于ios - 在主包ios中将nsstring添加到本地html文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12884655/