我有一个包含日期的表格视图。我希望根据日期下的项目数量,让每个部分都有正确的行数。
为此,我创建了一个NSMutableDictionary
,它使用日期作为键,并具有值的对象数组。我已经验证我的词典已填充,但在numberOfRowsInSection
方法中,我的词典会返回 0 以获取每个键的长度。为什么会这样?在numberOfRowsInSection
方法之前调用viewDidLoad
吗?
这是我的numberOfRowsInSection
方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [[itemsByDate objectForKey:[datesDB objectAtIndex:section]] count];
}
以下是我在NSMutableDictionary
方法
viewDidLoad
的方法
[itemsByDate setValue:items forKey:[datesDB objectAtIndex:i]];
答案 0 :(得分:0)
试试这可能是你的问题解决了......
- (void)viewDidLoad
{
/// alloc this dictionary here
///retain dictionary after add data.
[itemByDate retain];
}
-(void)viewDidAppear:(BOOL)animated{
[yourtableView reloadData];
}
:)
答案 1 :(得分:0)
我在使用tableView时经常犯的错误是我忘了为我的tableview的源字典/数组分配内存。
听起来可能很傻。你能验证一下吗?