如何根据文本内容增加NSTableView中的行高?

7
如何根据文本内容增加NSTableView中的行高。当文本更多时,应该增加行高;当删除文本时,行高应该缩小。
我在我的NSTableView子类中实现了"textDidChange"通知,但是我没有找到任何可以增加行高的方法。NSTableView的"setRowHeight"会增加表格视图中每一行的高度。我想要可变行高。是否有示例代码或指针来完成这个问题?
我找到了以下链接。

http://cocoadev.com/forums/discussion/1851/calculating-row-heights

但我找不到任何关于此的示例!任何关于此的示例都将对我有很大的帮助!


尝试实现以下委托:

- (CGFloat)tableView:(NSTableView *)tableView heightOfRow:(NSInteger)row

通过计算字符串长度,现在我能够增加行高,但是NSTextFieldCell的高度仍然相同。如何在行高改变时增加文本字段的高度。

2个回答

1

corbin dunn 提供了一个解决方案

  • 修复您的自动调整大小/自动布局约束,使文本视图粘附到其容器上,
  • 使用自定义NSTableCellView对象的帮助计算行高-tableView:heightOfRow:

-9
你可以在方法- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {}中增加tableviewrow的高度。在textDidFinishEditing中调用[tableView reloadData]重新加载表格。

3
注意:这个问题是关于NSTableView,而这个答案是关于UITableView。Cocoa并不等同于Cocoa Touch。 - Vincent Tourraine

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接