网络:XML 解析(使用GDataXMLNode第三方框架)
来源:互联网 发布:mac罗马数字怎么打 编辑:程序博客网 时间:2024/05/16 05:12
#import "ViewController.h"#import "CZVideo.h"//#import "CZParseVideoXml.h"#import "CZVideoCell.h"#import "GDataXMLNode.h"@interface ViewController ()<NSXMLParserDelegate>@property (nonatomic, strong) NSArray *data; // 数组数据@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; [self loadData]; [self setupRefresh];}- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.data.count;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { CZVideoCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CZVideoCell" forIndexPath:indexPath]; // 设置行对应的数据 cell.video = self.data[indexPath.row]; return cell;}// 初始化刷新控件- (void)setupRefresh { self.refreshControl = [[UIRefreshControl alloc]init]; // 添加事件 [self.refreshControl addTarget:self action:@selector(loadData) forControlEvents:UIControlEventValueChanged]; NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc]initWithString:@"正在玩命加载中..." attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:18],NSForegroundColorAttributeName:[UIColor redColor]}]; // 设置标题 self.refreshControl.attributedTitle = attributeStr;// self.refreshControl.tintColor = [UIColor redColor];}// xml 解析都是一个模型一个解析文件- (IBAction)loadData { // NSURL NSURL *url = [NSURL URLWithString:@"http://localhost/videos.xml"]; // 创建请求 NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:1 timeoutInterval:15]; // 异步发送请求 [NSURLConnection sendAsynchronousRequest:request queue:[[NSOperationQueue alloc]init] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) { GDataXMLDocument *xml = [[GDataXMLDocument alloc]initWithData:data error:nil]; NSMutableArray *dataM = [NSMutableArray array]; // 根节点 GDataXMLElement *root = xml.rootElement; [root.children enumerateObjectsUsingBlock:^(GDataXMLElement *_Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { // 创建模型 CZVideo *video = [[CZVideo alloc]init];// NSLog(@"%@",obj.attributes); video.videoId = @([[[obj.attributes lastObject] stringValue] integerValue]); [dataM addObject:video]; // video [obj.children enumerateObjectsUsingBlock:^(GDataXMLElement * _Nonnull objChildren, NSUInteger idx, BOOL * _Nonnull stop) { // name/length/...// NSLog(@"%@",objChildren.stringValue); NSString *key = objChildren.name; NSString *value = objChildren.stringValue; [video setValue:value forKey:key]; }]; }]; self.data = dataM.copy; [self.tableView reloadData]; NSLog(@"%@",self.data); }];}@end
0 0
- 网络:XML 解析(使用GDataXMLNode第三方框架)
- 用第三方框架GDataXMLNode解析XML数据:
- XML解析:第三方库GDataXMLNode的使用
- IOS学习:常用第三方库(GDataXMLNode:xml解析库)
- IOS学习:常用第三方库(GDataXMLNode:xml解析库)
- XML数据解析(GDataXMLNode的使用)
- IOS 使用第三方框架(DOM)解析XML(GDataXML)
- 安卓xml使用第三方框架Xstream解析
- 安卓xml使用第三方框架Xstream解析
- ios解析xml的两种方法,NSXMLParser和第三方库GDataXMLNode还有json数据的解析
- 第三方库GDataXMLNode——XML处理
- IOS开发中使用GDataXmlNode解析xml
- GDataXMLNode解析xml文件的使用
- DOM解析(GDataXMLNode)详解,xml解析
- 网络编程(使用第三方框架和不使用第三方框架)
- GDataXMLNode解析xml文件
- GDataXMLNode库 XML解析
- GDataXMLNode:xml解析库
- Java Math的floor、ceil、round方法
- LeetCode 9 Palindrome Number
- [JAVA · 初级]:20.IO流技术
- Android自定义View之圆形进度条
- 【UVa】11456 - Trainsorting
- 网络:XML 解析(使用GDataXMLNode第三方框架)
- 一段代码…………请无视
- 关于gitblit在window环境下的配置
- 第三章:表单应用
- CDOJ 1137 邱老师选妹子 数位dp
- Android自定义控件系列 十:利用添加自定义布局来搞定触摸事件的分发,解决组合界面中特定控件响应特定方向的事件
- 题目记录
- C语言---“自守数”问题
- 医学图像处理笔记(1)