tableView 重载数据/ 刷新cell (代码)

#import "NewTitleTableViewController.h"

@interface NewTitleTableViewController ()<NSURLConnectionDataDelegate>
@property (nonatomic,retain) NSArray * arr;
@property (nonatomic ,retain) NSMutableData * data ;
@end

@implementation NewTitleTableViewController
- (void)dealloc
{
    self.data = nil;
    self.arr = nil;
    [super dealloc];
}
- (id)initWithStyle:(UITableViewStyle)style
{
    self = [super initWithStyle:style];
    if (self) {
       
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    NSString * urlString = @"http://XXXXX";
    NSURL * url = [NSURL URLWithString:urlString];
    NSMutableURLRequest * request = [NSMutableURLRequest requestWithURL:url];
    NSString * parm = [NSString stringWithFormat:@"%@",@"?date=20131129&startRecord=10&len=30&udid=1234567890&terminalType=Iphone&cid=213"];
    NSData * parmData = [parm dataUsingEncoding:NSUTF8StringEncoding];
    //6 设置请求体
    [request setHTTPBody:parmData];
    //7 设置请求方式
    [request setHTTPMethod:@"POST"];

异步POST
    [NSURLConnection connectionWithRequest:request delegate:self];
  
}

代理方法:
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
{
    self.data = [NSMutableData data];
}

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    [self.data appendData:data];
}
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
    
    NSDictionary * dic = [NSJSONSerialization JSONObjectWithData:self.data options:NSJSONReadingMutableContainers error:nil];
        self.arr = dic[@"news"];
    [self.tableView reloadData];
}
-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
    
}

tableView datadelegate  方法:

#pragma mark - Table view data source

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{

return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{

if (self.arr.count == 0) {
        return 1;
    }
    return self.arr.count;
}

cell 方法

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString * iden = @"fff";
    UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:iden];
    if (!cell) {
        cell = [[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:iden] autorelease];
    }
    
    if (self.arr[indexPath.row][@"title"] == nil)
    {
        cell.textLabel.text = @"加载中....";
    }
    else
    {
    cell.textLabel.text = self.arr[indexPath.row][@"title"];
    }
    return cell;
}

@end

时间: 2024-10-04 22:27:14

tableView 重载数据/ 刷新cell (代码)的相关文章

tableView 重载数据/ 刷新cell

[self.tableView reloadData]; 异步POST/GET (多线程)的情况下,数据不能及时获取,tableView的cell 上无法显示数据, 可以暂时给定一个title , 待数据获取后刷新cell  使用 reloadData .

[iOS 技巧 - 12] tableview 的数据刷新

1.tableView的刷新 1> 数据刷新的总体步骤 * 修改模型数据 * 刷新表格(刷新界面) 2> 刷新表格(刷新界面)的方法 * 全局刷新(每一行都会重新刷新) - (void)reloadData; * 局部刷新(使用前提: 刷新前后, 模型数据的个数不变) - (void)reloadRows:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation; * 局部删除(使用前提: 模型数据减少的

IOS开发UI基础--数据刷新

IOS开发UI基础--数据刷新 cell的数据刷新包含以下几个方面 添加数据 删除数据 更改数据 全局刷新方法(最常用) [self.tableView reloadData]; // 屏幕上的所有可视的cell都会刷新一遍 局部刷新方法 添加数据 NSArray *indexPaths = @[ [NSIndexPath indexPathForRow:0 inSection:0], [NSIndexPath indexPathForRow:1 inSection:0] ]; [self.ta

iOS-UI控件之UITableView(四)- cell数据刷新

TableView- 数据刷新 数据刷新 添加数据 删除数据 更改数据 全局刷新方法(最常用) [self.tableView reloadData]; // 屏幕上的所有可视的cell都会刷新一遍 局部刷新方法 添加数据 NSArray *indexPaths = @[ [NSIndexPath indexPathForRow:0 inSection:0], [NSIndexPath indexPathForRow:1 inSection:0] ]; [self.tableView inser

【iOS开发-59】LOL案例:单组tabView、alertView样式、实现监听,以及用reloadData数据刷新

案例效果: (1)先在storyboard中拖拽出一个tableView.然后下面用代码. --tableView继承自scrollView.所以自然有滚动的特性 --最基本的还是数据转模型,以及对cell的赋值 --而cell的赋值那一块,为了优化性能,我们先从tableView的缓存中查找有无被缓存的cell,假设有,直接取出,假设没有再创建.这样提高性能. --这个缓存池是tableView自带的,当滚动的时候,cell不在视线范围内时,这个cell就被放到缓存池里了. #import "

数据刷新

*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px; cursor: pointer; position: absolute

关于初学者的一些小技巧--tableViewCell的数据刷新

就目前而言,给自定义cell赋值的时候会通过定义一个属性来储存从网络或者本地请求到的数据,具体用什么方法请求的数据,不是今天要说的重点. 今天主要分享一下对tableview上的自定义cell的数据的刷新. 应用场景,如果是用一个tableview来展示新闻概述,或者一些活动概述的时候,通常需要给cell的deselect方法管理详情页面,可以用模态也可以用push跳转下一界面,如果详情页面是可编辑的,就会牵涉到返回列表页面时的数据更新.所以在返回的时候需要做两步,一个是对对应数据库的内容进行相

iOS开发UI篇—自定义瀑布流控件(蘑菇街数据刷新操作)

iOS开发UI篇—自定义瀑布流控件(蘑菇街数据刷新操作) 一.简单说明 使用数据刷新框架: 该框架提供了两种刷新的方法,一个是使用block回调(存在循环引用问题,_ _weak),一个是使用调用. 问题:在进行下拉刷新之前,应该要清空之前的所有数据(在刷新数据这个方法中). 移除正在显示的cell: (1)把字典中的所有的值,都从屏幕上移除 (2)清除字典中的所有元素 (3)清除cell的frame,每个位置的cell的frame都要重新计算 (4)清除可复用的缓存池. 该部分的代码如下: 1

百思不得姐数据刷新数据部分(七)

一 刷新功能图和内部计算原理图 1 刷新功能图: 2 内部计算原理图 二 解析步骤 1 分析整个精华模块 2 真实数据请求部分 3 模型 4 先添加尾部刷新控件 5 再添加头部刷新控件 6 处理刷新业务逻辑 7 知识点补充 三 分析模块 1 从一个完整的app中可以看出,在精华模块中处于全部标题的部分数据包括了其它几部分的数据,内部有视频;声音;图片和段子,所以我们只需要将"全部"做好,就能很快的搞定其它模块了. 四 真实数据请求 1 大致步骤: --> 1 查看百思不得姐该部分