如何重新加载数据?

时间:2011-03-19 21:58:53

标签: objective-c uitableview ios4 reloaddata

我不傻,我知道如何重新加载数据。我处于一个棘手的情况,我在另一个名为OHGridView的UIView里面有一个UIView。我必须以同样的方式命名。

使用OHGridView示例代码,刷新看起来有点像这样:

[(OHGridView *)self.view reloadData];

但是现在我添加了一个UIView,它不再有效。

感谢任何帮助!

修改

Code removed

1 个答案:

答案 0 :(得分:3)

NSNotificationCenter可能就是您所需要的。您可以注册事件(例如执行更新事件),然后从任何地方发布这些事件。这些会转到通知中心,然后转到您的课程/视图。收到活动后,您就可以完成所需的工作。

文档在这里:

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSNotificationCenter_Class/Reference/Reference.html

在OHGridView内部,您将在初始化期间调用:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(ReloadNotification:) name:@"ReloadOHGridView" object:nil];

然后,只需定义方法:

- (void)ReloadNotification:(NSNotification *)notification
{
    [self reloadData];
}

因此,当您想要进行更新时,您只需调用:

[[NSNotificationCenter defaultCenter] postNotificationName:@"ReloadOHGridView" object:self];

当您取消分配OHGridView时,您应该删除观察者:

[[NSNotificationCenter defaultCenter] removeObserver:self];