如何将 UIRefreshControl 添加到 UIColloectionView 的底部?这意味着在向上滚动(查看旧数据或其他内容)时它是如何工作的?
问问题
14815 次
3 回答
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
. 例如,如果您要加载更多数据,请在此单元格的末尾添加一个部分。如果你正确地格式化这个额外的单元格(例如,一个贯穿整个集合视图的单元格),它肯定可以呈现你正在寻找的效果。
于 2013-02-17T08:22:39.573 回答
4
这是实现bottomRefreshControl属性的 UIScrollView 类(UICollectionView 类的父级)的 CCBottomRefreshControl类别。它与 iOS 6 和 7 原生刷新控件兼容。
于 2014-01-20T20:44:10.117 回答
-3
你不能。您根本无法真正自定义UIRefreshControl
。
于 2013-02-17T02:47:20.097 回答