iOS – *** Terminating app due to uncaught exception ‘NSRangeException&am

释放双眼,带上耳机,听听看~!

* Terminating app due to uncaught exception ‘NSRangeException’, reason: ‘ -[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0]’ ** First throw call stack: (0x3693b2a3 0x3443b97f 0x36886b75 0x18e391 0x36367275 0x363e9ea9 0x38a09a6f 0x369105df 0x36910291 0x3690ef01 0x36881ebd 0x36881d49 0x345372eb 0x362f9301 0x95d55 0x95c50) libc++abi.dylib: terminate called throwing an exception

在一个项目里,UI部分是UITableView,经常出现上述错误,一般都是由于 :indexPath.row查找不到数据导致的问题

解决办法:


举例说明:具体解决办法看需求

如下需求是:请求数据最多不超多三条

如果是直接:return 3 ; 便会出现如上述错误,由于第一次视图在布局的时候数据还未请求返回的:ListArray.count = 0;得到数据后为:ListArray.count。

  • 因此首先需要判断是否返回数据为零条,或者小于三条。
  • 若是有多少条数据返回多少直接:return ListArray.count ;
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (section == 0) {
return 3;
}else{
if (_ListArray.count != 0) {
if (_ListArray.count > 3){
return 3;
}else{
return  _ListArray.count;
}
}else {
return 0;
}
}
}

 

人已赞赏
iOS文章

iOS开发UIButton获取标题文字

2020-5-16 0:16:54

iOS文章

iOS开发Coding.net使用和从Github转移项目到Coding.net

2020-5-16 1:31:48

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索