gpt4 book ai didi

iphone - 如何动态设置 ScrollView 的内容大小

转载 作者:行者123 更新时间:2023-11-28 19:09:43 26 4
gpt4 key购买 nike

我有一个 scrollView,在那个 scrollView 上,我有许多标签和 textView 以及一个 tableView。没有时,scrollView 工作得很好。 tablView 中的行数较少,但如果 tableView 的行数更多,那么我将无法获取全部内容,甚至我会丢失 tableView 中的大量信息,因为 tableView 不可滚动。我已经添加了所有标签、textView 和 tableView 作为 ScrollView 的 subview 。任何人都可以帮助我,以便我可以获得完整的 tableView 并使其适当滚动。

这是我设置 scrollView 内容大小的代码。

float maxHeight = 0;

for(UIView *v in [self.scrollView subviews]){
if(v.frame.origin.x + v.frame.size.height > maxHeight)
maxHeight = v.frame.origin.x + v.frame.size.height;
}

self.scrollView.contentSize = CGSizeMake(_scrollView.frame.size.width, maxHeight+100);

最佳答案

首先,您需要调整表格的大小,使其适合所有行(因为如您所说,它不可滚动)。我相信这样做会使您的所有行都不可重用,因此如果它是一张大表,您可能会遇到性能问题。还要注意@David H 的回答,所以如果你真的想这样做,你最好使用另一个 UIScrollView 而不是 UITableView (它不会带来无论哪种方式都有很多好处)。

其次,您需要将所有 View 移动到表格 View 下方,这样它们就不会重叠。一种简单的方法是将这些 View 放在不同的 View 中,这样您只需要移动一个 View (但在这种情况下,您还需要相应地调整该 View 的大小)。

最后,与其遍历所有 scrollview 的 subview ,不如跟踪最靠近底部的 View (这取决于您如何生成和添加 ScrollView 的 View )。

关于iphone - 如何动态设置 ScrollView 的内容大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16812298/

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