TouchJSON的简单使用

Posted 思微随想

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TouchJSON的简单使用相关的知识,希望对你有一定的参考价值。

TouchJSON是OC转换JSON的一个第三方类库,使用简单。在GitHub上可以轻松获取:TouchJSON

以下是简单的事例演示从douban movie请求JSON数据并转为字典对象后对控件赋值。

#import "ViewController.h"

#import "CJSONSerializer.h"

#import "CJSONDeserializer.h"

#import "NSDictionary_JSONExtensions.h"


@interface ViewController () @property (weak, nonatomic) IBOutlet UITextView *textView; @property (nonatomic, strong) NSMutableDictionary *dic; @property (nonatomic, strong) NSString *text; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. } - (IBAction)didClickTouchJSONButton:(id)sender { //GCD异步 dispatch_queue_t q1 = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_async(q1, ^{ NSURL *url = [NSURL URLWithString:@"https://api.douban.com/v2/movie/subject/22265299"]; NSString *jsonString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

//直接转换,import CJSONDeserializer.h //self.dic = [[CJSONDeserializer deserializer] deserialize:[jsonString dataUsingEncoding:NSUTF8StringEncoding] error:nil]; //如果使用下面扩展了NSDictionary的方法,请import NSDictionary_JSONExtensions.h self.dic = [NSDictionary dictionaryWithJSONString:jsonString error:nil]; NSString *title = [self.dic objectForKey:@"original_title"]; NSMutableArray *genresArray = [self.dic objectForKey:@"genres"]; NSString *genres = [NSString stringWithFormat:@"%@/%@",[genresArray objectAtIndex:0],[genresArray objectAtIndex:1]]; NSString *summary = [self.dic objectForKey:@"summary"]; self.text = [NSString stringWithFormat:@"电影名称:%@\n体裁:%@\n剧情介绍:%@",title,genres,summary]; //更新UI操作需要在主线程 dispatch_async(dispatch_get_main_queue(), ^{ self.textView.text = self.text; }); }); }

 

以上是关于TouchJSON的简单使用的主要内容,如果未能解决你的问题,请参考以下文章

使用 TouchJson 序列化字典的问题

创建自己的代码片段(CodeSnippet)

为啥这段代码会泄露? (简单的代码片段)

如何使用Android片段管理器传递变量[重复]

c_cpp 这个简单的代码片段显示了如何使用有符号整数在C中完成插值。 for()循环确定要插入的范围

代码片段 - Golang 实现简单的 Web 服务器