IOS UITableView滚动到指定分区,或者指定行

在做地区选择的时候,经常会使用分区的表格,每个分区的头部是地区的首字母,例如A,B,C,D...等等,而在表格的右边也有竖着的一列A,B,C,D...等等,要求是在点击竖着的一列对应的字母的时候,需要表格自动滚动到该字母的分区,其实很简单,竖着的一列字母用button,在button的点击事件里,用这个方法,他是表格的代理方法:

[self.TableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:YES];

其中position有四个枚举,

UITableViewScrollPositionTop 是顶部

UITableViewScrollPositionBottom 是底部

UITableViewScrollPositionMiddle 是中间

UITableViewScrollPositionNone 是默认

完成,可以自己试一下

补充一个功能点,如果需要判断表格滑动到了哪一个分区,看以下示例

- (void)scrollViewDidScroll:(UIScrollView*)scrollView{

    if(scrollView ==self.tbv) {

       //判断表格滚动到了哪个分区

        CGFloaty = scrollView.contentOffset.y;

        for(NSInteger i =0; i < self.baseArr.count; i ++){

            CGFloat offset = [self.tbv rectForSection:i].origin.y;

            CGFloat height = [self.tbv rectForSection:i].size.height;

            if(y >= offset && y <= offset + height) {

                NSLog(@"=====================%ld",i);

            }

        }

    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容