UITableView刷新数据reLoadData
来源:互联网 发布:即时通讯app源码 编辑:程序博客网 时间:2024/04/30 12:55
要实现的功能是这样的:在rootView中一个TableView,刚加载程序的时候是空白的。当按下添加按钮之后,在下个页面设置好值,并要求回传给rootView,并在视图翻转完成后就刷新好rootView的TableView表。
解答:可以用以下知识完成:
(1)页面间消息机制NSNotificationCenter;
(2)少数据量的时候,用NSUserDefaults或者共同属性实现值的传递;大数据量的时候,就用delegate来实现存取。
(3)用reLoadData来实现刷新表格数据。代码如下:
1、在rootView中建立一个消息中心,用来监控下个页面是否传消息过来。一接到消息就调用reRoadTableView函数
[[NSNotificationCenter defaultCenter]addObserver:self
selector:@selector(reRoadTableView)
name:@"saveSetting"//消息名
object:nil];//注意是nil
在下个页面建立响应的消息post点,可以放在确定按钮里面:
[[NSNotificationCenter defaultCenter] postNotificationName:@"saveSetting" object:self];//发送消息给root
2、写reRoadTableView函数,关键语句是[timerTab reloadData]
- (void) reRoadTableView
{
// self.finalSettings = [[NSUserDefaults standardUserDefaults] valueForKey:@"settings"]; //接收数组,第二种方法
NSLog(@"你看到我就说明消息机制起作用了!");//消息机制工作正常
NSLog(@"我收到的Tag是:%@",setTag);//没收到
self.setDate = [NSDate date];//retainCount仍旧为1
self.setTag = @"吃饭时间到!";
NSDateFormatter *format = [[NSDateFormatter alloc]init];
[format setDateFormat:@"MM-dd HH:mm"];
self.strDate = [format stringFromDate:setDate];//转化为NSString
[format release];
[timerTab reloadData];
}
其实reLoadData方法被调用之后,系统会重新执行一遍TableViewDelegate的相关函数,最主要的cellFor***方法,单元格的设置信息会被重新执行一遍。
- UITableView刷新数据reLoadData
- UITableView刷新数据reLoadData
- UITableView刷新数据reLoadData
- UITableView调用reloadData不刷新的Bug
- iOS UITableView reloadData刷新的动画
- UITableView/UICollectionView调用reloadData刷新时界面闪烁
- tableView调用reloadData,数据没有刷新
- 使用UITableView是如何判断reloadData加载数据已经结束
- UITableview reloadData 无效
- UITableView reloadData结束之后
- UITableView判断reloadData结束
- UITableView刷新数据
- UITableView + UIAlertView + 数据刷新
- UITableView数据刷新
- uitableview 数据刷新
- iOS UITableView数据刷新
- UI021---UITableView数据刷新
- UITableView表格数据刷新
- gcc和g++区别
- Android Looper和Handler分析
- 第一篇文章
- mysql存储过程中不能使用return的解决办法
- 黑马程序员 Day12 交通灯管理系统
- UITableView刷新数据reLoadData
- C++与Java基本数据类型比较
- VC中的定时器(摘录)
- json读取
- 体系结构
- Java I/O 管道流实现线程间的通讯例子
- using关键字
- Android: 启动另外的APP及传递参数
- 如何使用标准按钮创建无模式 CPropertySheet