gpt4 book ai didi

objective-c - "Null is returned from a method that is expected to return a non-null value"与 cellForRowAtIndexPath

转载 作者:搜寻专家 更新时间:2023-10-30 19:41:00 26 4
gpt4 key购买 nike

在 iOS 10 下,会抛出这个新警告。

在方法无法确定要返回的适当单元格(例如异常)的情况下,从 cellForRowAtIndexPath 返回的适当方法是什么?

(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(tableView == self.selectedContentTableView) {
// make cell...

return cell;
}
else if(tableView == self.recipientTableView) {
// make cell...

return cell;
}
else {
NSLog(@"Some exception message for unexpected tableView");

return nil; // ??? what now instead
}
}

最佳答案

如果这种情况是不应该发生的编程错误,那么适当的操作是终止程序并出现错误消息,以便检测并修复编程错误:

(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(tableView == self.selectedContentTableView) {
// make cell...

return cell;
}
else if(tableView == self.recipientTableView) {
// make cell...

return cell;
}
else {
NSLog(@"Some exception message for unexpected tableView");
abort();
}
}

abort()函数用__attribute__((noreturn))标记,因此编译器不会提示缺少返回值。

关于objective-c - "Null is returned from a method that is expected to return a non-null value"与 cellForRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39356369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com