2013-04-24 68 views
0

如何更新组数组数据库的新信息,而不是使用旧信息?使用数据库的新信息更新阵列

所以基本上,我有一个组模型对象。它在另一个视图中得到更新。

但在我家的表格视图控制器中,我有以下代码。

NSArray *sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"dateAdded" ascending:NO]]; 
_groups = [NSMutableArray arrayWithArray:[[[GGUser groups] allObjects] sortedArrayUsingDescriptors:sortDescriptors]]; 

这不会更新到数据库中的新信息。

只有当应用程序重新启动时,它是否更新数据库的新信息。

所以它基本上只使用自应用程序启动以来获取的信息。

注:这个问题是略有不同,因为它本来,收集有关问题

+0

你在调用[tableView reloadData]吗? – rdelmar 2013-04-24 02:17:32

+0

我现在不叫它。当我调用我的tableView变为空时:P @ rdelmar – GangstaGraham 2013-04-24 02:26:51

+0

嗯......这没有意义,除非_groups为零或为空或者您的表视图数据源方法的实现有问题。我认为我们需要看到那些人有任何帮助。你有没有登录过_groups? – rdelmar 2013-04-24 02:33:44

回答

1

每当tableViews数据源更新,你需要调用[自我reloadData]更多信息之后。

如果您已经这样做了,那可能是您通过导航栏后退按钮返回到tableview控制器。这意味着ViewDidLoad不会再次被调用,因此_groups变量不会被更新。

我会尝试把你的_groups代码放在viewDidAppear中,然后在tableView上调用reloadData。如果这样的话,我会考虑重构你的代码来使用委托或通知来让桌面视图知道数据源被更新

+0

我不是真正使用数据源的时候,我从_groups得到一组数据,然后每个单元给出每个单个组信息的详细信息,所以是的,我不确定这是否意味着它使用的是数据源。此外,每次都调用viewDidLoad,因为我有一个自定义导航栏后退按钮。 viewDidAppear不起作用。 :(不错,尽管尝试,我会继续尝试找到一个解决方案@RobertWagstaff – GangstaGraham 2013-04-24 02:29:35