objective-c – 基于NSStrings的NSTableView行高

objective-c – 基于NSStrings的NSTableView行高,第1张

概述基本上,我有一个带有1列的NSTableView,我在每行插入长字符串.但是,并非所有的字符串都很长,所以我希望每行的高度根据字符串的长度而有所不同. 我已经发现我需要询问它的宽度是多少,然后询问字符串如果柱子宽那么会占用多少行,然后决定NSCell的“高”程度.但是我到底该怎么做呢?我得到了以下的柱宽: [[[tableView tableColumns] objectAtIndex:0] wi 基本上,我有一个带有1列的NStableVIEw,我在每行插入长字符串.但是,并非所有的字符串都很长,所以我希望每行的高度根据字符串的长度而有所不同.

我已经发现我需要询问它的宽度是多少,然后询问字符串如果柱子宽那么会占用多少行,然后决定NSCell的“高”程度.但是我到底该怎么做呢?我得到了以下的柱宽:

[[[tableVIEw tableColumns] objectAtIndex:0] wIDth];

但我无法弄清楚如何询问Nsstring将占用多少空间.或者,也许,我应该采取更好的方式来做这件事?

在此先感谢您的帮助.

解决方法 创建一个 NSTextFieldCell实例并匹配其字体/大小/等.到列的数据单元格.询问-cellSizeforBounds:,传入一个具有较大高度(FLT_MAX?)的列所需宽度的矩形.结果应该是NSSize,您可以使用它的高度.

如果您有多个多行文本列会变得更加棘手,因为您需要考虑该行中的所有单元格,将最大值作为行高.如果您希望平均有很多行,您可能希望缓存此工作,根据需要进行更新,然后在调用行高度委托方法时简单地引用它.

总结

以上是内存溢出为你收集整理的objective-c – 基于NSStrings的NSTableView行高全部内容,希望文章能够帮你解决objective-c – 基于NSStrings的NSTableView行高所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1016303.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存