www.MyException.Cn 网友分享于:2014-12-25 浏览:0次
MGTemplateEngine 模版引擎简单使用以及MGTemplateEngine导入xcode6.1报错修改
MGTemplateEngine 模版引擎
一、 MGTemplateEngine比较象 PHP 中的 Smarty 模版引擎,是一个轻量级的引擎,简单好用。只要设置很多不同的HMTL模版,就能轻松的实现一个View多种内容格式的显示,对于不熟悉HTML或者减轻工作量而言,把这些工作让设计分担一下还是很好的,也比较容易实现设计想要的效果。
像网易、粉笔网都是用的该库。
首先,看看模版的代码
[html] view plaincopy
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="./detail.css" rel="stylesheet">
</head>
<body>
<div id='container' name="container">
<div class="title">{{ title }}</div>
<div class="date">{{ date }}</div>
<div class="content">{{ content }}</div>
</div>
</body>
</html>
Objective-C代码 - 下面的创建代码MGTemplateEngine都是从官方的例子中参考下来的,已经有很详细的说明
[objc] view plaincopy
// Set up template engine with your chosen matcher.
MGTemplateEngine *engine = [MGTemplateEngine templateEngine];
//[engine setDelegate:self];
[engine setMatcher:[ICUTemplateMatcher matcherWithTemplateEngine:engine]];
// 这里就是设置,或者里边塞变量的地方。其实也可以设置一个数组,这样模板的灵活也会更强。这里我就不演示了官方有例子
[engine setObject:self.detailData[@"title"] forKey:@"title"];
[engine setObject:self.detailData[@"content"] forKey:@"content"];
// MGTemplateEngine/Detail/detail.html
// MGTemplateEngine/Detail/detail.css
NSString *templatePath = [[NSBundle mainBundle] pathForResource:@"detail" ofType:@"html"];
// Process the template and display the results.
NSString *html = [engine processTemplateInFileAtPath:templatePath withVariables:nil];
// 获得HTML
self.htmlWebView = [[UIWebView alloc] initWithFrame:CGRectMake(8, 5, 304, 320)];
self.htmlWebView.delegate = self;
self.htmlWebView.userInteractionEnabled = NO;
// 你就能加载到HTML里面的.css文件
NSString *baseURL = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"Detail"];
[self.htmlWebView loadHTMLString:html baseURL:[NSURL fileURLWithPath:baseURL]];
[self.detailView addSubview:self.htmlWebView];
以上的都是 MGTemplateEngine 很基本的使用,将来也会大派用场的。对于内容页的显示,没有比HTML来的更方便直接,通过切换模版和简单的参数设置,多个不同类型的栏目也可以使用同一个详细页,很大程度上减轻工作理和易于维护。
二、在苹果公司不断的更新Xcode很多以前的库都被省略掉,所以以前的第三方导入到Xcode6.1 难免不会出现问题。同理今天我试了下导MGTemplateEngine,结果报了如下错误:
一番苦解后,原来是类中缺少<Foundation/Foundation.h>架包,import后问题解决。
发布此文章仅为传递网友分享,不代表本站观点,若侵权请联系我们删除,本站将不对此承担任何责任。
Google伦敦新总部 犹如星级庄园老美怎么看待阿里赴美上市我的丈夫是个程序员如何区分一个程序员是“老手“还是“新手“?每天工作4小时的程序员Web开发人员为什么越来越懒了?十大编程算法助程序员走上高手之路程序员周末都喜欢做什么?移动开发-热门移动开发-最新移动开发-其它
1
根据ip地址跟子网掩码获取广播地址的java实现2
运放相干知识13
使能MT7620的第二个SPI接口(cs1)——兼叙pinmux与pinctrl驱动4
Java值传递,引述传递相关知识5
Unity之一天一个技术点(十八)-让敌人缓慢转入,并且跟踪玩家6
UGUI多个Canvas的点染先后层次关系设置7
将英文句子拆成一个个单纯词(对于句子中可能出现的不同情况)8
UIDocumentInteractionController 调剂分享弹窗的size9
小弟我的csdn博客10
C51回想七上一篇:
UIEvent详解:远程控制,运动控制跟触摸事件下一篇:
友盟(3)高级功能文章评论
社交账号登录:
微信微博QQ人人更多?
最新最早最热
0条评论
还没有评论,沙发等你来抢
我的异常网正在使用多说
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。