在我开始之前,请不要对我大吼大叫,告诉我答案在这里或那里,我所有的研究都被手机带结果污染了,我不使用它,所以我找不到答案!
我目前正在开发原生 iOS应用。它几乎完成了,除了一个部分,它将包含一个很多的文本(基本上是一项运动的所有规则,10个部分有2到18个子部分,每个部分有很多文本)。我开始实现,使用UITableViewController显示主要部分,选择一个单元格将我带到另一个UITableViewController,其中包含所选部分的所有子部分。然后,选择一个子部分,你应该得到它的内容。我开始做的是在单元格中使用另一个带有TextViews的UITableVC,使用节标题来构造文本,但是真的不方便,读起来也不错。
所以,我想在UIWebViews中使用html页面。我正在考虑使用JQueryMobile,因为我过去曾经使用它,我认为你可以很快得到很好的结果。所以,我有几个问题:
首先,您如何看待本节的结构? (一个UITableVC发送到另一个UITableVC,打开一个UIWebView)。我怎样才能做一些尽可能可读的事情?这真的是我第一次把这么多的文字放在一个应用程序中,所以我不像我开发更多“标准”的东西那样确定我的设计。我想做一些更好的事情,但我没有想法我怎样才能做得更好......
其次,JQuery Mobile是一个不错的选择吗?这带来了一个真正的问题:如何在我的应用程序中包含JQuery Mobile?我知道我可以直接从JQuery的服务器中包含.js和.css,但我的应用程序可以脱机运行,那么应该在哪里我把所需的文件?如何将它们包含在html文件中?
感谢您的帮助,再次,如果第二个问题已被提出/回答,我很抱歉,但是当您搜索 JQuery Mobile 和 iOS 时,所有你得到的是PhoneGap问题..
以防万一:
XCode 4.5.1
iOS 5 +
故事板
ARC
答案 0 :(得分:2)
因为UIWebView
对象会占用大量内存,所以在本机视图中只有一个UIWebView
对象会更好。不要为UITableViewController
的每一行添加它。
您可以正常编写网页并包含jQuery Mobile,并在Mobile Safari上测试它们(通过在Mac上启动服务器并在iOS设备/模拟器中访问它)。测试后,将XCode项目中的目录添加为蓝色“文件夹引用”。使用以下代码加载UIWebView
中的页面:
NSString *baseDirectory = [[NSBundle mainBundle].resourcePath stringByAppendingPathComponent:@"your_directory"];
NSURL *url = [NSURL URLWithString:@"your_index.html" relativeToURL:[NSURL fileURLWithPath:baseDirectory]]
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:3600];
[webView loadRequest:request];