cell
在滚动显示的逻辑已经优化好了 但是偶尔在打开其他应用后切换回来滚动还是有一丝的卡顿
刚开始以为是tableview cell setitem
的逻辑有点问题 但是调试后整体信息都没有显示过这部分
最后定位到
根据工具显示 nslog
权重最大 看下具体的代码定位
#pragma mark - delegate
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
// DLog(@"feed controller did scroll");
/*
这几句调试信息会在滑动的时候消耗很多资源导致偶尔有一丝的卡顿
UIView *chooseView = self.segmentContainerController.view;
CGRect rect = [self.scrollView convertRect:chooseView.frame toView:self.view];
DLog(@"%@",NSStringFromCGRect(rect));
DLog(@"scrollView.contentOffset is %@",NSStringFromCGPoint(scrollView.contentOffset));
*/
self.offsetScrollStartTop = self.segmentContainerController.view.origin.y;
// DLog(@"offsetScrollStartTop is %lf",self.offsetScrollStartTop);
if (scrollView.contentOffset.y >= self.offsetScrollStartTop) {
scrollView.contentOffset = CGPointMake(0, self.offsetScrollStartTop);
if (self.canScroll) {
self.canScroll = NO;
self.segmentContainerController.canScroll = YES;
}
}else{
if (!self.canScroll) {//子视图没到顶部
scrollView.contentOffset = CGPointMake(0, self.offsetScrollStartTop);
}else {
if (scrollView.contentOffset.x > 0) {
scrollView.contentOffset = CGPointMake(scrollView.contentOffset.x, 0);
}
}
}
self.scrollView.showsVerticalScrollIndicator = _canScroll?YES:NO;
}
已经注释 然后再多次测试 没有出现过卡顿 记录一下~