我有一个用户单击搜索按钮时填充的数组。如果没有该响应的数据,则服务器返回空响应,因此这里是一个空数组。我想知道,为什么当我发出假请求时它会返回EXC_BAD_ACCESS (code=1, address = 0xa)
。
它指向:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (_arrValues.count > 0)
return self.arrValues.count;
return 0;
}
要排队:
if (_arrValues.count > 0)
在viewDidLoad
我确实分配了一个这样的数组:
_arrValues = @[];
所以,我不明白为什么会这样。有什么建议吗? 在调试器中它只是打印一个数组内存和ISA指针,显然没有数据,如果用户搜索虚假请求什么都不返回。
从调试面板:
当我更新我的服务器部分(删除响应并始终创建一个空数组)时,问题就消失了。可能我的请求/映射部分存在问题:
// _arrValues = [eventsMgr getEventsFromResponse:x];
_arrValues = @[];
答案 0 :(得分:1)
使用此代码
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [_arrValues count];
}