如何将 UITableView 高度更改为其内容高度并且仍然具有可点击的内容?

Posted

技术标签:

【中文标题】如何将 UITableView 高度更改为其内容高度并且仍然具有可点击的内容?【英文标题】:How can I change UITableView height to its content height and still have clickable content? 【发布时间】:2013-04-26 00:56:27 【问题描述】:

所以我有一个表格视图,我在其中更改了大小以使其内容大小与此代码相匹配。

CGRect testF = table1.frame;
testF.size.height = table1.contentSize.height;
table1.frame = testF;

但是当我尝试单击任何项​​目时,我只能单击前两个或红色部分,因为那是开始时表格的初始高度。

有没有办法解决这个问题,动态改变它的高度并仍然保持可点击?

【问题讨论】:

How do I change the height of a UITableView to fit its dynamic content?的可能重复 我用它来改变大小,但它无法点击,无论如何 Kris 解决了我的问题。 酷,很高兴你把它整理好了。 【参考方案1】:

我认为问题不在于您调整了 tableview 的大小,而是有一些东西阻止了这些触摸事件。也许您有一些其他视图,或者 tableview 嵌套在另一个视图中,该视图的框架设置为您看到的可点击区域但有剪辑到边界,因此您可以看到它之外的 tableview。尝试执行以下操作,看看它是否有效,这应该可以检验我的理论:

table1.superview.frame = cgrectMake(table1.superview.frame.origin.x, table1.superview.frame.origin.y, testF.size.width, testF.size.height);

在上面显示的代码下添加它。

【讨论】:

哦,哇,哈哈,很高兴我能帮上忙。我在想,这实际上可能是问题的 10%。 大声笑我认为这是因为我使用的是嵌套视图,就像你说的那样。无论哪种方式都有效,再次感谢!旁注:小世界,但我也住在密歇根州。 利沃尼亚。去年我在 Title Source 实习,看到你在 Quicken 工作? (谷歌跟踪哈哈) 哈哈,移动团队。

以上是关于如何将 UITableView 高度更改为其内容高度并且仍然具有可点击的内容?的主要内容,如果未能解决你的问题,请参考以下文章

iPhone:如何通过 UILabel 内容高度更改行高

如何将 UITableView 的高度调整为内容大小的高度?

是否可以继承 UITableView 并根据单元格的数量使其高度具有内在的内容大小?

swift 使用“自动布局”将UITableView的高度设置为其内容的高度

在 Flutter 中,您如何制作动画以将容器从 0 高度扩展到其内容的高度?

使用 Auto Layout 将 UITableView 的高度设置为其内容的高度