JSDBanTangHomeDemo
JSDBanTangHomeDemo copied to clipboard
页面稍微有些偏移量(左右方向),界面立即跑到第一行cell
看了下半糖 和其他app,没有这样的问题
半塘的也是这样的。切换之后到下一个的第一行。当然这个可以自己设置。
不想要切换之后立马调到第一行,怎么自己设置?
你需要记录下每一个tableView的偏移量,然后切换的时候设置就好了。
这样会有问题吧,比如说A界面的tableView的offset是200,据此计算应该将headerView推上去到看不见 。然后切换到B,此时滑动B的tableView,offset为100,那么此时headerView会有一部分露出来。如果此时再切换回A,设置之前记录的offset为200的话,会触发KVO,此时headerView会瞬间从"有一部分露出来"变为“看不见”。这个应该是有问题的吧
我现在是在达到临界值之后。如果你点击就到切换,就会设置tableView偏移量相应的值。
self.currentTableView = self.tableViews[index];
for (UITableView *tableView in self.tableViews) {
if ( self.lastTableViewOffsetY>=0 && self.lastTableViewOffsetY<=136) {
tableView.contentOffset = CGPointMake(0, self.lastTableViewOffsetY);
}else if(self.lastTableViewOffsetY < 0){
tableView.contentOffset = CGPointMake(0, 0);
}else if ( self.lastTableViewOffsetY > 136){
tableView.contentOffset = CGPointMake(0, 136);
}
}
这个值你要是能记录下来,也是可以自己设置的,我是设置为初始值而已。触发KVO也是根据坐标值来判断要不要隐藏header相关组件的,所以你可以试一试。