gla*_*ast 4 objective-c ios ios6 uicollectionview
我正在尝试重新加载UICollectionView的数据部分,而不是页眉或页脚(补充视图).
当我使用reloadData方法时,页眉和页脚部分也会重新加载,这就是我想要的.
我找到了这个方法reloadSections:,但我不知道为什么它不起作用.
因为我的集合视图只包含一个部分,所以我尝试使用这样的方法:
[collectionViewController.collectionView reloadSections:[NSIndexSet indexSetWithIndex:0]];
Run Code Online (Sandbox Code Playgroud)
但是在调用方法时会产生运行时错误.错误的内容是:
'NSInvalidArgumentException', reason: '-[UICollectionViewUpdateItem action]:
unrecognized selector sent to instance 0x90aec00'
Run Code Online (Sandbox Code Playgroud)
方法reloadSections:是不允许这样使用的?有没有其他方法只重新加载数据部分,而不是页眉或页脚部分?
我认为错误只发生在搜索栏是集合视图的子视图时,并且reloadSections:在键盘输入启动时尝试调用.
本文给出了类似问题的答案,但这对我没有用.
所以我使用了另一种方法来调用几乎相同的功能.
我没有将标题作为补充视图添加,而是将标题作为"视图"的子视图.(不是collectionView)
并添加了一些滚动委托来模仿表视图的标题.
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGFloat y = scrollView.contentOffset.y;
if (y < 44) {
[self.searchBar setFrame:CGRectMake(0, -y, 320, 44)];
[self.searchBar setHidden:NO];
} else if (y >= 44) {
[self.searchBar setHidden:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10129 次 |
| 最近记录: |