UITableView中的最后一个项目textLabel.text无法访问

问题描述:

我正在使用从interwebs中检索的项目数组填充UITableView。UITableView中的最后一个项目textLabel.text无法访问

有问题的代码从一个数组中填入一个列表中的项目,然后根据所选的项目将请求发送回不同的php script-> sql table等。我遇到的问题是整个列表正确填充,但是当使用list/tableview中的最后一项时,array.textLabel.text显然是..不存在的。一切都发送得很好,但这最后一个项目(无论我在阵列中有多少项最后一个没有...保持或某物),它没有选择任何东西。

然后当发送第二个请求时,它给了我一个越界的错误,因为最后一个项目不存在,它说我试图拉出那些不存在的东西。

*终止应用程序由于未捕获的异常 'NSRangeException',原因: '* - [NSArray的objectAtIndex:]:索引1超出范围[0 .. 0]'

这是如何它使得阵列它用于填充:

NSArray *listItems = [parsedOutput componentsSeparatedByString:@","]; 
restList = [[NSArray alloc] initWithArray:listItems]; 

行计数基于[restList count];等 并呼吁我用文字:

restName = [tableView cellForRowAtIndexPath:indexPath]; 
sendName = restName.textLabel.text; 

任何想法,为什么最后一个元素似乎并不尽管其上市和可选存在吗?

错误告诉你到底发生了什么事。您正试图访问超出数组边界的索引。因此,要么访问错误的数组,要么访问数组1的实际末尾。尝试在错误出现的行之前尝试NSLog数组,并查看它是否确实具有正确的元素,以及您尝试访问的输出index.row,同时牢记数组是零索引的。