iOS,怎么让UITableView只能下拉,到达底部后,就不能上拉.

怎么让TableView只能下拉,到达底部后,就不能上拉.

如果借助bounces属性的话,就上下拉都不行了.

或者怎么判断表最底部的cell是否在界面上?

阅读 12.3k
3 个回答

个人有两种思路:

  1. 在滚动的时候,判断contentOffset,
    计算到达底部之后,contentOffset等于自己.

2.不停的计算当前屏幕有多少cell,查找row最大的cell是否在屏幕上,
使用brouces属性禁止弹回.

不知道大家有什么好的方法?

用你说的bounces的方法把上下拉关掉,另外针对下拉手势写个简单的动画。
另,楼上的方法1可以一试。

CGFloat ff = scrollView.contentOffset.y;
if (ff > scrollView.contentSize.height - {tableView.height}){

        // 取消上拉回弹
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - {tableView.height})];

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题