我想根据滚动的内容更改UITableView
的高度。现在我通过获取scrollViewDidScroll
事件然后获取滚动值然后更改高度来实现。这是我的代码(为了简化,我省略了不相关的代码):
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
float currentOffset = scrollView.contentOffset.y
double delta = currentOffset - storedOffset;
if(delta != 0)
{
delta = abs(delta);
CGRect newListFrame = myTableView.frame;
float newListHeight = newListFrame.size.height + delta;
newListFrame.size.height = newListHeight;
myTableView.frame = newListFrame;
}
storedOffset = currentOffset;
}
但是这种方法是错误的,因为使用这种方法我的UITableView
的内容只滚动了一点点,这不是我想要的。我只想获得该列表的值,该列表将滚动而不实际滚动它。有没有办法做到这一点?我可以得到原始的手指移动事件,但我可以在UITableVIew
得到它吗?我可以使用UITableView
方法执行此类操作吗?