我怎样才能从类别表中重新加载RootViewController中列出的tableView?
我在做一个笑话应用程序。 主页是RootViewController
从类别表中列出的类别列表。
数据库在用户执行更改时更新。 问题是当我回到主页时,表格没有刷新。 当我再次运行应用程序时,更改是可见的。
我试过[tableView reloadData]
和[self.tableView reloadData]
但没有结果。
这里代码:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { WhySoSeriousAppDelegate *appDelegate = (WhySoSeriousAppDelegate *)[[UIApplication sharedApplication] delegate]; return appDelegate.jokes.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier ] autorelease]; UIView *activeColor = [[[UIView alloc] init] autorelease]; activeColor.backgroundColor = [UIColor colorWithRed:170/256.0 green:50/256.0 blue:0/256.0 alpha:1.0]; cell.selectedBackgroundView = activeColor; } WhySoSeriousAppDelegate *appDelegate = (WhySoSeriousAppDelegate *)[[UIApplication sharedApplication] delegate]; Joke *joke = (Joke *)[appDelegate.jokes objectAtIndex:indexPath.row]; [cell setText:joke.category]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; return cell; }
我该如何解决这个问题?
尝试下面的代码更新您的UITableview:
[table_view beginUpdates]; [table_view deleteSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationLeft]; [table_view insertSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationRight]; [table_view endUpdates];
谢谢…!
在同一个控制器上的应用程序委托中重新载入笑话数据以查看更改的logging。 然后重新加载表视图。