IOS 大众点评 首页界面 仿真实现

本文介绍了如何在iOS平台上仿照大众点评实现首页界面。通过获取API接口,设定城市限定,如北京,进行数据请求。解析JSON数据并展示在自定义的UITableViewCell中,同时实现了点击导航栏按钮跳转至不同分类页面的功能。
摘要由CSDN通过智能技术生成

1.得到大众点评的API接口,  API接口中有相应的对应数据返回的方法

+(NSMutableArray *)requestBusinessesWithParams:(NSMutableDictionary*)params;

//请求团购

+(NSMutableArray *)requestDealsWithParams:(NSMutableDictionary *)params;

 

2.这个请求方法需要传递进去一个可变字典,(可变字典的数据是作为得到API接口地址的限定的:

 [self.dicssetObject:@"北京"forKey:@"city"]; //API返回接口地址的限定。

  

-(void)viewWillAppear:(BOOL)animated{

    [self.categoryArrremoveAllObjects];  每次返回首页都需要将分类页面的数据源删除,否则会出错。 因为每次跳转到分类界面

判定就变 例如:美食Category了, 如果返回页面的时候不在 将要展示页面中删除分类页面

里的数据,那么 判定依然还是美食Category,首页页面的 北京city无法正常调用API接口地址

展示会出错!!!!!!!!!!!!!!

   

    self.dics = [NSMutableDictionarydictionary]; 

    [self.dicssetObject:@"北京"forKey:@"city"];   每次返回主页的时候都要将判定变成北京city 否则数据仍然是 分类页面的判定

并且需要将分类界面的数据源数组的数据清空。否则会无法显示主页数据;

    self.arr = [DianpingApirequestBusinessesWithParams:self.dics];

     [self.tableViewreloadData];

}

 

 

  3.         2中方法的实现是在具体你要显示出数据的页面中调用   最后返回给一个可变数组作为当前页面的数据源。

  1.      当然光有这些还不够,   还需要程序员自己解析数据, 然后在API接口方法中调用解析的方法

 

+(NSMutableArray *)requestBusinessesWithParams:(NSMutableDictionary*)params{

   

    NSString *path = [NSStringstringWithFormat:@"http://api.dianping.com/v1/business/find_businesses"];

//   NSLog(@"%@",path);

   

    //调用大众点评提供的对地址进行序列化的方法

    path = [DianpingApiserializeURL:pathparams:params];

    NSLog(@"%@",path);   序列化后得到的地址输出到控制台,就是json字符串 然后解析出需要解析的数据;

    NSURL *url = [NSURLURLWithString:path];

   

    NSData *data = [NSDatadataWithContentsOfURL:url];

    NSDictionary *dic = [NSJSONSerializationJSONObjectWithData:dataoptions:0error:nil];

   

    //解析

   NSMutableArray *arr = [NSMutableArrayarray];

    arr = [JsonParserjsonParserByDic:dic];

   

    return arr;

}

 

得到地址,得到json的步骤。

1.API接口代码中  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值