HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – iCarousel拉动刷新并加载更多大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我成功地能够集成iCarousel组件,但现在面临一个问题,以实现“拉动刷新”和& “加载更多”功能.

实际上iCarousel是UIView的子类,而“Pull to refresh”& “加载更多”功能通常适用于UIScrollView的子类. UIView不支持这些功能.因此,我陷入了困境.

我不知道如何实现“Pull to refresh”& UIView(ICarousel)的“加载更多”功能

解决方法

您可以使用scrollOffset属性和carouselDidScroll方法来实现“Pull to refresh”& “加载更多”功能.

在这里有一些你需要知道的要点.

> scrollOffset< 0:用户试图拉动刷新.
> scrollOffset> numberOfItems – 2:将显示最后一项

在carouselDidScroll方法上实现此逻辑以存档功能.

- (void)carouselDidScroll:(iCarousel *)carousel {
  // Start new pull request when user pulls |carousel| 
  // a distance equal to 0.4 width/height of an item
  if (carousel.scrollOffset < -0.4) {
    [self pullTorefresh];
  }

  // Start new load more request when last item will be displayed.
  // In this situation,I ignore cases when |numberOfItems| is small
  // Ex: |numberOfItems| < 2
  if (carousel.scrollOffset > carousel.numberOfItems - 2) {
    [self loadMore];
  }
}

- (void)pullTorefresh {
  // Make sure have only one request at a time
  if (self.isPullingTorefresh) {
    return;
  }

  self.isPullingTorefresh = YES;

  // request API to receive new data

  // update |isPullingTorefresh| when request finishes
  self.isPullingTorefresh = NO;
}

- (void)loadMore {
  // Make sure have only one request at a time
  if (self.isLoadingMorE) {
    return;
  }

  self.isLoadingMore = YES;

  // request API to receive new data

  // update |isLoadingMore| when request finishes
  self.isLoadingMore = NO;
}

结果

 

有关更多详细信息,您可以查看我的示例

https://github.com/trungducc/stackoverflow/tree/icarousel-pull-to-refresh-load-more

大佬总结

以上是大佬教程为你收集整理的ios – iCarousel拉动刷新并加载更多全部内容,希望文章能够帮你解决ios – iCarousel拉动刷新并加载更多所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。