当我在Three20 TTTableViewController中重新排序行/单元格时(编辑表格并向上或向下移动单个单元格),当单元格移动超出tableview的边界时,它不会滚动。当我将单元格向上拖动超出边界时,它会自动将单元格向上动画并从视图中移出,而不会滚动它。这使得无法有效地将细胞重新排序到当前可见之外的位置。
我已经使用和不使用Three20对此进行了测试,只有在使用Three20实现进行订购时才会滚动表格。
答案 0 :(得分:1)
显然Three20的TTTableView
实施会覆盖UIScrollView
的
- (void)setContentSize:(CGSize)size;
和
- (void)setContentOffset:(CGPoint)point;
这些是为了防止在内容大小或表高度发生变化时错误地更改contentOffset,尽管它在编辑模式下移动行时无意中阻止了表滚动。
我评论了这些方法,并且我需要的功能可用。
答案 1 :(得分:1)
Three20喜欢使用setContentOffset和setContentSize方法覆盖来控制滚动行为。滚动行为由scrollEnabled属性控制。
TTTableViews是scrollEnabled = YES,但是当这个方法被称为scrollEnabled = NO时,需要在重新排序行时重置。