ios - "Left Detail"样式单元格文本中的详细信息标签被截断 - swift

标签 ios swift uitableview cell uitableviewautomaticdimension

我有一个 TableView Controller ,其原型(prototype)单元格的样式为“Left Detail”。

-在我的 viewDidLoad() 中,我有 self.tableView.estimatedRowHeight = 40self.tableView.rowHeight = UITableViewAutomaticDimension 就像许多解决方案所说的那样。然而,当我的细节标签变得太大时(比如描述单元格),单元格不会随着文本增长。

-我也尝试在 viewDidAppear(animated:) 中重新加载数据,但这没有帮助。

-我现在的 heightForRowAtIndex 函数中没有任何内容,但我也尝试设置它,但没有解决我的问题。

-填充单元格后,我还在我的 cellForRowAtIndexPath 中尝试了 cell.sizeToFit()。

我是否遗漏了一些明显的东西?还是“Left Detail”样式限制了单元格高度?

最佳答案

您没有遗漏任何我知道的明显信息,但可能会遇到涉及内置单元格样式的极端情况。 self 调整大小存在少量问题,它主要适用于内置样式,但 can fail for certain cases .

这是内置样式管理标签和约束的方式与自定义单元格样式不同的副作用。如果您在调试器中检查内置单元格的内容 View ,它的约束数组是空的。

对于一种边缘情况,如果某个单元格不需要内置标签之一,Apple 会通过从单元格中完全删除该 View 来优化它。当该单元格被重用并且需要重新添加标签时,约束不会针对该初始事件进行更新。可以通过确保两个标签始终有文本来解决该特定问题,这样 View 就不会被删除。

您绝对不需要包含 heightForRowAtIndexPath。您应该删除它,然后查看是否可以解决 cellForRowAtIndexPath 中的内置样式问题。如果不是,您可能必须使用模仿 Left Detail 样式的自定义单元格。

无论哪种方式,我都推荐 submitting a bug report用一个小示例项目来说明“左细节”问题,因为 Apple 已经解决了其中的许多问题,并且内置样式自调整大小变得更加有用。

关于ios - "Left Detail"样式单元格文本中的详细信息标签被截断 - swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35442999/

相关文章:

ios - 如何自定义 fbfrienpickerview Controller 并在自定义表格 View 中显示

ios - 在同一部 iPhone 上运行的应用程序之间透明通信

sqlite - 为什么我的 sqlite 调用同时在不同的线程上?

Swift 函数 vs lazy var vs 计算属性——区别?

ios - 当 textView 显示键盘不起作用时向上移动 View

ios - 我应该如何重构我的自定义 UITableView 以提高可维护性

ios - AVKit – 视频剪辑仅循环 2 次

ios - 移动到 Root View Controller 而不显示 subview

ios - 使用 CollectionViewController 创建 Collection View 我缺少什么?

ios - 通过 UITableViewCell 中的 UIButton 更新模型