帧大小调整后UITableView滚动速度

时间:2012-05-24 13:15:20

标签: objective-c ios cocoa-touch ipad

我有一个UITableView,它在iPad纵向模式下覆盖了一半的屏幕。每当我点击时,展开按钮,计算并动画化tableview的superview框架以覆盖整个屏幕,即使只有一行,滚动也会变得非常混乱和闪烁。特别是反弹动画似乎更长。 TableView被autoresizeheight屏蔽。恢复superview的帧后,tableview滚动再次变得更加平滑。 tableview的初始帧和滚动速度之间是否有任何关系?这种行为可能的根本原因是什么?

1 个答案:

答案 0 :(得分:0)

也许您在cellForRowAtIndexPath方法中插入了resize,因此每次滚动时都会设置大小tableview。我将此代码段插入到viewDidLoad中的检查中,然后在开头只设置一次大小,一切正常。

CGPoint tvFrameO = _TableView.frame.origin;
CGSize tvFrameS = _TableView.frame.size;
float valueToResize = 50.0f;
_TableView.frame = CGRectMake(tvFrameO.x, 
                                     tvFrameO.y, 
                                     tvFrameS.width, 
                                     tvFrameS.height + valueToResize);