Swift NSTableView:如果我设置;行大小样式:自动";那么所有行的大小都是0px
我有一个静态视图。如果“行大小样式:自定义”(或小等): 但是如果“行大小样式:自动”(我希望动态调整行高度大小) 创建单元格的代码:Swift NSTableView:如果我设置;行大小样式:自动";那么所有行的大小都是0px,swift,xcode,macos,nstableview,Swift,Xcode,Macos,Nstableview,我有一个静态视图。如果“行大小样式:自定义”(或小等): 但是如果“行大小样式:自动”(我希望动态调整行高度大小) 创建单元格的代码: extension ViewController: NSTableViewDelegate { func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? { let currentO
extension ViewController: NSTableViewDelegate {
func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? {
let currentOption = options[row] //options is Array of dictionaries
if tableColumn?.identifier == NSUserInterfaceItemIdentifier(rawValue: "short") {
let cellIdentifier = NSUserInterfaceItemIdentifier(rawValue: "shortCell")
guard let cellView = tableView.makeView(withIdentifier: cellIdentifier, owner: self) as? NSTableCellView else { return nil }
cellView.textField?.stringValue = currentOption["short"]!
print(cellView.fittingSize.height)
return cellView
} else if tableColumn?.identifier == NSUserInterfaceItemIdentifier(rawValue: "long") {
let cellIdentifier = NSUserInterfaceItemIdentifier(rawValue: "longCell")
guard let cellView = tableView.makeView(withIdentifier: cellIdentifier, owner: self) as? NSTableCellView else { return nil }
cellView.textField?.stringValue = currentOption["long"]!
return cellView
}
return nil
}
}
确保自动布局具有顶部和底部约束
例如,垂直放置object1、object2、object3时,确保object1固定在superview的安全区域/顶部,object3固定在superview的安全区域/底部。您有自动布局问题。正确检查约束条件