gpt4 book ai didi

xcode - 具有可变行高和自定义单元格的 macOS cocoa TableView

转载 作者:行者123 更新时间:2023-12-03 17:47:14 25 4
gpt4 key购买 nike

情况我想在 macOS Cocoa 应用程序中创建新闻文章表。 (见下图)每个单元格由两个标签组成。一份用于标题,一份用于主要内容。

问题现在新闻正文的长度和整个 TableView 的宽度是可变的。我希望每个行/单元格的高度可变,具体取决于其中标签的大小。

我们尝试了什么我们尝试了以下方法:我们有一个表格 View

 -> TableColumn
-> Custom View
-> LabelHeader
-> LabelBody

TableView 上的 RowSizeStyle 属性设置为“自动”

单元格中填充有自定义类。基本上我们尝试实现这个 StackOverflow 解决方案:Link to Solution -> 这对我们不起作用。

(还有更多我们无法运行的解决方案)

问题任何人都可以提供此问题的工作教程或解决方案吗?或者至少是一种有前途的方法?

PS我在 macOS 10.13.5 上使用 XCode 9.4.1 和 Swift 4

非常感谢任何帮助,谢谢!

img

最佳答案

在现代的 cocoa 应用程序中,您可以使用NSLayoutConstraint来实现表格 View 单元格的动态高度。棘手的部分是获取可以设置约束高度的文本高度。这可以通过使用 NSTextView 而不是 NSTextField 并向布局管理器询问当前高度来完成。

NSRect usedRect = [[textView layoutManager] usedRectForTextContainer:[self textContainer]];
float newHeight = usedRect.size.height;

几年前我在 Objective C 应用程序中使用了它,所以如果您有其他问题,请告诉我。

关于xcode - 具有可变行高和自定义单元格的 macOS cocoa TableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51126391/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com