ios - 如何在 View 出现之前滚动到 iPhone 上 UITableView 的底部

我有一个 UITableView 填充了可变高度的单元格。当 View 被插入 View 时,我希望表格滚动到底部。

我目前有以下功能

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:[log count]-1 inSection:0];
[self.table scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionBottom animated:NO];

log 是一个可变数组,包含构成每个单元格内容的对象。

上面的代码在 viewDidAppear 中运行良好,但是这有一个不幸的副作用,即当 View 第一次出现时显示表格的顶部然后跳到底部。如果 table view 可以在它出现之前滚动到底部,我会更喜欢它。

我在 viewWillAppearviewDidLoad 中尝试了滚动,但在这两种情况下,数据都还没有加载到表中,并且都抛出了异常。

任何指导都将不胜感激,即使只是告诉我我所拥有的一切都是可能的。

最佳答案

我相信呼唤

 tableView.setContentOffset(CGPoint(x: 0, y: CGFloat.greatestFiniteMagnitude), animated: false)

会做你想做的。

https://stackoverflow.com/questions/2770158/

相关文章:

ios - 不推荐使用旋转方法,相当于 'didRotateFromInterfaceOrienta

iphone - iOS:如何执行 HTTP POST 请求?

iphone - 如何处理包含属性的 Objective-C 协议(protocol)?

ios - UITableViewCell 分隔符在 iOS7 中消失

ios - 模仿Facebook隐藏/显示扩展/收缩导航栏

ios - 如何以简单的方式将 CGPoint 对象添加到 NSArray?

objective-c - 是否可以在 Obj-C 中使用 Swift 的枚举?

objective-c - 在 Objective-C 中加入一个数组

ios - 更改 UITableView 部分标题的字体大小

iphone - 如何使用可选方法创建协议(protocol)?