如何将UIRefreshControl添加到UIColloectionView的底部?这意味着当涉及到Scroll up(查看旧数据或其他内容)时它是如何工作的?
答案 0 :(得分:12)
您无法使用UIRefreshControl
来执行此操作,但如果您使用更简单的解决方案,则可以设置集合视图,以便在滚动到底部时自动加载更多数据。 (顺便提一下,这是一个更常见的用户界面......刷新上拉并不常见,但是当你触底时自动检索更多数据。)
最原始的再现是响应UIScrollViewDelegate
方法并确定你是否滚动到集合视图的底部(它本身是UIScrollView
的子类):
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if ((scrollView.contentOffset.y + scrollView.frame.size.height) >= scrollView.contentSize.height)
{
if (!self.isLoadingMoreData)
{
self.loadingMoreData = YES;
// proceed with the loading of more data
}
}
}
更好的是,如果您要加载更多数据,请在底部显示一个单元格,其中显示“请稍候,加载更多数据”,可能使用UIActivityIndicatorView
。例如,如果要加载更多数据,请使用此单元格向末尾添加一个部分。如果你正确地格式化这个额外的单元格(例如,整个集合视图中的单个单元格),它肯定会呈现你正在寻找的效果。
答案 1 :(得分:4)
这是实现 bottomRefreshControl 属性的UIScrollView类(UICollectionView类的父类)的CCBottomRefreshControl类别。它兼容iOS 6和7本机刷新控件。
答案 2 :(得分:-2)
你做不到。您根本无法真正自定义UIRefreshControl
。