我在tableview中显示了一些记录。我看到屏幕上出现垂直滚动,但每当我点击滚动时,我在main()函数中出现SIGABRT错误。
为什么会出现这个错误?
由于
以下是在表格视图中添加文本的代码。这是用viewdidload()函数编写的。
-(void) viewDidload() {
extern NSArray *wallvalue;
tableList = [[NSMutableArray alloc] initWithCapacity:[wallvalue count]];
for (NSDictionary *person in wallvalue) {
NSString *personName = [person objectForKey:@"message"];
if(![[NSNull null] isEqual:personName] && [personName length])
{
[tableList addObject:personName];
NSLog(personName);
}
}
}
我的错误发生在下面的主要功能中。
int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil);
[pool release];
return retVal;
}
错误是:Thread EXC_BAD_ACCESS in line (int retval= UIApplicationMain(argc, argv, nil, nil);
答案 0 :(得分:0)
我的猜测是你的numberOfRowsinsection
比你的模态(数据)更多。而你试图滚动最后的对象将通过
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
方法。
因此,一旦再次加载单元格,请检查数据。而下面的滚动方法将始终调用
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath