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,同时牢记数组是零索引的。