我在swift UITableViewController中有以下代码,但我得到一个"必须将自动调整掩码转换为约束,以便在第二行有_setHostsLayoutEngine:YES异常.我没有更改界面构建器中的任何设置(因此都检查了Autolayout和大小类).
override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell? {
let cell:TodoItemCell = tableView.dequeueReusableCellWithIdentifier("TodoItemCell", forIndexPath: indexPath) as TodoItemCell
let row = indexPath.row
cell.titleLabel.text = self.todoItems![row].title
self.callback!(row)
// Configure the cell...
return cell
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
pbu*_*eit 54
不知道这有多大帮助,但如果我尝试将单元格直接放在UIView而不是表格中,我会看到同样的错误.这对Xcode 5很好用,所以我怀疑它是XCode6/ios8的一个bug.同时,调试到该方法并查看你的tableView.确保它实际上有您要检索的单元格的实例.
更新:向Apple提交了一份错误报告,我可以确认这是一个ios8问题.不幸的是,它仍然存在于beta-5中,希望它们能在最终版本发布之前修复它.
nee*_*vek 31
这不是一个错误,你根本无法使用UIViewas作为表格视图的单元格,你必须确保nib文件中的顶级视图是一个UITableViewCell.
otu*_*web 25
我遇到这个问题是因为我将单元格中Layout的属性更改为。将其切换回以解决问题。
ContentViewInferred (Constraints)Autoresizing Mask
在 iOS 15 中,如果您将此设置设置错误,您的应用程序将会崩溃
我也遇到了这个问题,这是因为在其他答案中提到UITableViewCell的视图层次结构中使用了一个子类UITableView.在这种情况下,我的时间有限,所以我无法将该子类中的功能移动到UIView子类中.我想到的解决方法是UIView在视图层次结构中创建一个实例,该实例应该是单元格,并将单元实例的视图层次结构移植到其中,并从显示的视图层次结构中删除单元格本身.只要我保持视图,我将连接到单元实例的各种属性,一切都保持正常.
它有点hacky,但它会保持运行,直到重构的时间可用.
.xib当文件具有未嵌套在 UITableView 中的UITableViewCell时,发生了此崩溃。该单元格位于堆栈视图内 - 在某一时刻,它或多或少是一个占位符,因此一些界面警告将会消失。我删除了孤立表视图单元格并且不再发生崩溃。
| 归档时间: |
|
| 查看次数: |
20271 次 |
| 最近记录: |