UI---关于同步下载

{

   NSMutableArray *_dataList;
}

[self loadDataWithPage:1];
    
[self loadDataWithURLConnection];

//记得初始化数组

_dataList =[NSMutableArray array];

-(void)loadDataWithURLConnection
{
    //创建URL对象
    NSURL *url =[NSURL URLWithString:@"http://iappfree.candou.com:8080/free/applications/limited//?currency=rmb&page=1"];
    //创建网络请求对象
    NSURLRequest  *request =[[NSURLRequest alloc]initWithURL:url cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:10];
    //同步请求数据
    NSHTTPURLResponse *response;
    NSData *data =[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
  //  NSLog(@"data=%@",data);
    //请求数据成功. code=200;
  //  NSLog(@"code =%li",response.statusCode);
    id Json =[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
    // NSLog(@"%@",Json);
    if ([Json isKindOfClass:[NSDictionary class]]) {
        //字典方法解析
        NSArray *applications =[Json objectForKey:@"applications"];
        NSLog(@"%@",applications);
        _dataList =[applications mutableCopy];
    }else if ([Json isKindOfClass:[NSArray class]]){
        //数组方法解析
    }
}
//从网络请求数据
-(void)loadDataWithPage:(NSInteger)pageIndex
{
    NSString *URLString =[NSString stringWithFormat:@"http://iappfree.candou.com:8080/free/applications/limited//?currency=rmb&page=%li",pageIndex];
    NSURL *url =[NSURL URLWithString:URLString];
    //读取网址内容为字符串对象
    NSString *dataString =[NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
    //把字符串转换成NSData对象
    NSData *data =[dataString dataUsingEncoding:NSUTF8StringEncoding];
    //把直接把网址内容读取成NSData对象
   // NSData *data =[NSData dataWithContentsOfURL:url];
   // NSLog(@"%@",data);
    id Json =[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
   // NSLog(@"%@",Json);
    if ([Json isKindOfClass:[NSDictionary class]]) {
        //字典方法解析
        NSArray *applications =[Json objectForKey:@"applications"];
       // NSLog(@"%@",applications);
        _dataList =[applications mutableCopy];
    }else if ([Json isKindOfClass:[NSArray class]]){
        //数组方法解析
    }
}

时间: 2024-10-14 17:00:22

UI---关于同步下载的相关文章

网络数据的下载(NSUrlconnection异步下载和NSstring同步下载)和UI界面数据的刷新(都是抛弃第三方库的一些本质)

<1>NSString同步下载        //字符串的类方法,会根据url向服务器发起同步的数据请求,并将请求结果作为返回值    //同步请求数据,会对程序的UI主线程造成阻塞,用户体验极差 NSString *str = [NSString stringWithContentsOfURL:[NSURL URLWithString:kUrl] encoding:NSUTF8StringEncoding error:nil];    //json格式的数据 进行json解析 数据最外层是

NSData的同步下载与NSConnection的同步下载

NSData 同步下载 NSString * path = @"http://10.0.100.8/sns/my/user_list.php"; //转网址对象 NSURL * url = [NSURL URLWithString:path]; //转Data NSData * data = [NSData dataWithContentsOfURL:url]; if (data) { id obj = [NSJSONSerialization JSONObjectWithData:d

UI2_同步下载

// // ViewController.m // UI2_同步下载 // // Created by zhangxueming on 15/7/17. // Copyright (c) 2015年 zhangxueming. All rights reserved. // #import "ViewController.h" //http://iappfree.candou.com:8080/free/applications/limited?currency=rmb&pag

IOS UI多线程 NSThread 下载并显示图片到UIImageView

效果图 @property (weak,nonatomic)IBOutletUILabel *downLabelInfo; @property (weak,nonatomic)IBOutletUIImageView *imageView; @end @implementationViewController - (void)viewDidLoad { [super viewDidLoad]; NSString *url  [email protected]"http://d.hiphotos.b

同步下载 异步下载

异步下载:支持应用程序在后台下载数据,在等待下载完成的过程中不会阻塞代码的运行 同步下载:调用一个方法的时候,如果该方法的返回依赖于它的功能是否完成,则称该方法为同步方法.必须下载完成才能进行下一步.会出现卡壳现象. 同步下载几种形式: NSURL *url=[NSURL URLWithString:@"http://www.baidu.com"]; 形式一: NSString *str=[NSString stringWithContentsOfURL:url encoding:NS

【翻译】22款HTML &amp; CSS3 UI工具包免费下载

下面盘点了22款适用于网页设计的HTML&CSS3 UI工具包,并且全部都是免费的哦!喜欢就赶紧 下载或收藏吧.这些免费工具可以加速你的网页开发进程,让你有更多时间专注于其他更重要的部分.由于扁平化设计是当前趋势,所以下面也盘点了多款扁平化风 格的UI工具包.另外要提醒的一点就是,使用之前务必注意这些工具的浏览器兼容性,因为有些还未经100%的测试. 1.Get Shit Done Kit 免费的Bootstrap 3 UI工具包,绝佳的在线项目工具,支持响应式设计和各种易于使用的UI元素.它干

qt 线程与ui线程同步

QT UI 与线程同步 目前只会一种,采用信号槽机制.通常情况下,信号和槽机制可以同步操作,这就意味着在发射信号的时候,使用直接函数即可以立刻调用连接到一个信号上的多个槽.然而,当连接位于不同线程中的对象时,这一机制就会变得不同步起来,可以通过修改QObject::connect()的第5个可选参数而改变.connect的第五个参数Qt::QueuedConnection表示槽函数由接受信号的线程所执行,如果不加表示槽函数由发出信号的次线程执行.当传递信号的参数类型不是QT的元类型时要先注册,关

同步下载数据,jeson 解析

#import "ViewController.h" @interface ViewController () @property(nonatomic,weak)IBOutlet UIButton *button; @property(nonatomic,weak)IBOutlet UIImageView *imageView; @end @implementation ViewController -(IBAction)btnClick:(id)sender { //给一个url字符

iOS网络: NSURLConnection进行同步下载

通过 NSURLConnection 的 sendSynchronousRequest:returningResponse:error: 方法创建一 个同步的网络连接.这个方法将会返回一个 NSData 类型的数据 在创建一个同步的网络连接的时候我们需要明白一点,并不是是我们 的这个同步连接一定会堵塞我们的主线程,如果这个同步的连接是创建在主线程上的,那么 这种情况下是会堵塞我们的主线程的,其他的情况下是不一定会堵塞我们的主线程的.如果你在 GCD 的全局并发队列上初始化了一个同步的连接,你其实