如何重新载入UITableView中的数据
答
有两个问题:
1)如何重装UITableView
细胞?
2)如何每60秒自动执行一次?
我的答案:
1)要重新加载数据手动你应该对你UITableView
实例的指针。您可以使用@property
和IBOutlet
将此表与此属性相关联。假定您将其命名为tableView
。然后,您可以拨打[tableView reloadData];
重新加载表格的所有单元格和部分。
2)最简单的方法是创建NSTimer
,每隔60秒触发一次,并调用特定的方法。例如:
[NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(updateTable) userInfo:nil repeats:YES];
P.S.您也可以重新加载表格视图的特定单元格或部分。请在苹果文档搜索它们
答
尝试:
/*****TIMER*****/
timer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(updateTable) userInfo:nil repeats:YES];
/******************************************************************************/
-(void)updateTable{
[self.tableView reloadData];
}
答
你可以使用哈雷的答案,或者你可以使计时器调用reloadData到的tableview本身。
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:60 target:self.tableView selector:@selector(reloadData) userInfo:nil repeats:YES];
答
那么你需要检查你的数据模型每一次。以一些间隔重新加载表视图与相同的数据是不好的主意。对 ?
timer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(updateData) userInfo:nil repeats:YES];
-(void)updateData {
//do something with data model
//and reload table then
[self.tableView reloadData];
}
答
你需要设置为1分钟的NSTimer鉴于viewDidLoad方法控制器
- (void)viewDidLoad
{
NSTimer *myTimer = [NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(reloadTable) userInfo:nil repeats:YES];
}
//重新加载表法
-
(void)reloadTable{
[self.tableView reloadData];
[myTimer invalidate];
}
答
[NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(TblUpdate) userInfo:nil repeats:YES];
-(void)TblUpdate
{
//Your Webservice
//table reload
[tbl reloadData];
}
具有u试着对你自己做任何事情,以便从下面回答ers.please接受来自下面答案的任何答案。 – Alok 2012-04-23 06:30:31