关于ios开发 tableview问题

ios tableview

  • (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return self.message.count; //程序崩溃。message是通过懒加载的数组
    // exc_bad_accesscodeexc_i386_gpflt }

怎么解决这个问题

ios

4个回答

起码要判断一下message是否为nil。否则会crash

楼上说得对,你少了个message

要先判断message是否为nil,为nil的话返回0,也就是 if(message == nil)return 0;else return [self.message count];
由于网络速度一般很慢,所以第一次加载的话一般message都还没有获取到,所以执行这一步的话message一般会为nil。等到网络获取到数据之后,对message进行赋值和数据装载,再重新刷新一下,调用 [uitableview reload]。
还有一个方案是一开始就先对message进行初始化,在viewdidload的靠前的地方加入:self.message = [[UIMutableArray alloc] init]; 这样message就不会为nil了

你的问题应该不是出在这个数组上,我也像你这么写了,写了懒加载,并没有报错。
你好好看看你的报错信息吧,应该不是里的问题。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问