1

我并不笨,我知道如何重新加载数据。我处于一个棘手的情况,我在另一个名为 OHGridView 的 UIView 中有一个 UIView。我必须以相同的方式命名它们。

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

[(OHGridView *)self.view reloadData];

但是现在我添加了一个 UIView,它不再起作用了。

任何帮助表示赞赏!

编辑:

Code removed
4

1 回答 1

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];
于 2011-03-19T22:25:47.677 回答