iOS.访问 Web Service.使用下拉刷新控件

#import <UIKit/UIKit.h>
#import "T20140628025702NSNumber+Message.h"
#import "T20140628025702NSString+URLEncoding.h"

@interface T20140628025702ViewController : UITableViewController

@property (nonatomic,strong) NSMutableArray *listData;

// 查询所有
-(void)findAll;

@end
#import "T20140628025702ViewController.h"

@interface T20140628025702ViewController ()

@end

@implementation T20140628025702ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    // 1、初始化数据
    [self findAll];
    
    //初始化UIRefreshControl
    UIRefreshControl *rc = [[UIRefreshControl alloc] init];
    rc.attributedTitle = [[NSAttributedString alloc]initWithString:@"下拉刷新01"];
    [rc addTarget:self action:@selector(refreshTableView) forControlEvents:UIControlEventValueChanged];
    self.refreshControl = rc;
}


-(void) refreshTableView
{
    if (self.refreshControl.refreshing) {
        self.refreshControl.attributedTitle = [[NSAttributedString alloc]initWithString:@"加载中..."];
        
        [self findAll];
    }
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
}

#pragma mark table dataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return self.listData.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    // 1、初始化重用Cell
    static NSString *reUseCell = @"reUseCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:reUseCell];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:reUseCell];
    }
    
    // 2、配置重用Cell数据
    NSMutableDictionary*  dict = self.listData[indexPath.row];
    cell.textLabel.text = [dict objectForKey:@"Content"];
    cell.detailTextLabel.text = [dict objectForKey:@"CDate"];
    return cell;
}
-(void)findAll
{
    
    NSString *strURL = [[NSString alloc] initWithFormat:@"http://127.0.0.1:8080/kujizu/test01.html"];
    NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]];
    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
    NSData *data  = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
    
    if (data == nil) {
        
        self.listData = [[NSMutableArray alloc] init];
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:@"没有数据。" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
        [alertView show];
    }else{
        
        NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];
        
        NSNumber *resultCodeObj = [resDict objectForKey:@"ResultCode"];
        if ([resultCodeObj integerValue] >=0){
            
            self.listData = [resDict objectForKey:@"Record"];
        } else {
            
            NSString *errorStr = [resultCodeObj errorMessage];
            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"错误信息" message:errorStr delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
            [alertView show];
        }
    }
    if (self.refreshControl) {
        [self.refreshControl endRefreshing];
        self.refreshControl.attributedTitle = [[NSAttributedString alloc]initWithString:@"下拉刷新02"];
    }

}
@end

 

iOS.访问 Web Service.使用下拉刷新控件,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。