How can I add a footer view to NSTableView?

2019-06-16 17:05发布

问题:

It seems that NSTableView has no equivalent to UITableView's tableFooterView property. What is the preferred way to add a footer view to a table view in Cocoa?

回答1:

NSTableView doesn't have sections like UITableView or NSCollectionView, and therefore no headers and footers.

Instead you can do it via your datasource, if you are using a view-based table.

  1. Add a cell to your table in Interface Builder with custom styling/elements that you need in your footer. Give it an identifier like "TableFooter"
  2. Increment (by one) the number of rows returned by your NSTableViewDataSource's numberOfRowsInTableView(tableView:)
  3. and in tableView(tableView:viewForTableColumn:row:) for this last row, instantiate that item from storyboard using the identifier "TableFooter".