【发布时间】:2016-01-19 22:25:35
【问题描述】:
在 viewWillAppear 方法中使用 scrollToRowAtIndexPath 时出现 EXC_BAD_ACCESS 错误。我搜索了解决方案并看到一些旧帖子建议将委托和表格设置为零(请参见下面的代码),但是当我设置它时,我根本没有在我的表格视图中加载任何内容。 我应该说这是聊天应用程序的一部分,我想在其中显示首先输入的最后一条消息。非常感谢您对此提供的任何帮助。 这是我的观点WillAppear:
-(void)viewWillAppear:(BOOL)animated {
[self.table reloadData];
int lastRowNumber = [self.table numberOfRowsInSection:0] - 1;
NSIndexPath* ip = [NSIndexPath indexPathForRow:lastRowNumber inSection:0];
//self.table.delegate = nil;
//self.table = nil;
[self.table scrollToRowAtIndexPath:ip atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
我应该补充一点,这段代码似乎在我程序的其他部分运行良好,我唯一得到错误的是 viewWillAppear 方法。
【问题讨论】:
-
尝试将动画设置为 NO。
-
我看不出你的代码有什么问题。我创建了一个演示项目并将您的代码复制到其中。它完美地工作。您的数据源可能有问题。
标签: objective-c tableview exc-bad-access viewwillappear