我今天第二次......但是这里有很多优秀的开发者......
您好,
我的tableView遇到了一些问题...如果视图出现我的表重新加载其数据,但它不会更新numbersOfRowsInSection ......
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSLog(@"COUNTER: %i",[content count]);
return [content count];
}
日志说我第一次加载页面的值是正确的。但是,如果我添加一个对象并重新加载数据,则此函数不会调用。
有没有人知道解决方案?
谢谢, mavrick3。
编辑:
下面我打电话给[table reloadData]
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
if ([content count] != 0) {
self.content = [[[[NSArray alloc] initWithContentsOfFile:[FileManager filePath]] objectAtIndex:row_] objectForKey:@"faecher"];
[table reloadData];
NSLog(@"----%@",content);
}
}
是的,dataSource和delegate已连接,它们都在我的标题中实现。
答案 0 :(得分:1)
如果在UITableview对象上调用reloadData并且它是dataSource,则应该调用此方法。
您确定已将表格视图分配给您的媒体资源(即在界面制作工具中将其拖放过来吗?)
我怀疑你只是让你的控制器成为你的表视图的dataSource(因此第一次加载它时获取值)。之后,对reloadData的调用将无法工作,因为视图控制器中的属性仍为零。
你可以通过在调用reloadData之前放置一个NSLog来测试它 - 如果它输出nil然后你没有连接它。
NSLog(@"%@", myTable);
[myTable reloadData];
答案 1 :(得分:0)
任何编译器警告? “table”实际上是UITableView的一个实例吗?