我的第一个问题帖子。我想从函数返回一个字符串。该函数应该访问数组的字符串(task.name)(arrayOfTasks)。该数组查找表的索引以确定task.name的值。
这是我在实现函数callString时遇到的错误:“因未捕获的异常而终止应用程序'NSInternalInconsistencyException',原因:'与UITableView一起使用的索引路径无效。传递给表视图的索引路径必须包含两个索引指定节和行。如果可能,请使用UITableView.h中的NSIndexPath类别。 “
正如你所看到的,我试图在函数中指定一个部分(forSection ...),但我继续得到错误。
func callString(var yzx: String, tableView: UITableView!, forRowAtIndexPath indexPath: NSIndexPath!, forSectionAtIndexPath: NSIndexPath!) -> String {
var task = arrayOfTasks[indexPath.row]
var yzx = task.name
return yzx
}
label.text = callString(String(), tableView: UITableView(), forRowAtIndexPath: NSIndexPath(), forSectionAtIndexPath: NSIndexPath())
答案 0 :(得分:0)
您需要创建一个有效的NSIndexPath。
例如:NSIndexPath(forRow: 0, inSection: 0)
所以你可以把你的功能改成这样的东西:
func callString(var yzx: String, tableView: UITableView!, forIndexPath indexPath: NSIndexPath!) -> String {
var task = arrayOfTasks[indexPath.row]
var yzx = task.name
return yzx
}
let label = UILabel()
label.text = callString(String(), UITableView(), forIndexPath: NSIndexPath(forRow: 0, inSection: 0))