gpt4 book ai didi

iphone - UIScrollView 的 subview 应如何报告其 contentSize 范围?

转载 作者:行者123 更新时间:2023-12-03 20:11:01 24 4
gpt4 key购买 nike

我正在寻求更多有关正确设计 View 的建议。

我拥有的是一个 UIScrollView,其中包含我创建的一个或多个自定义 View 。我的问题是,谁向 ScrollView 报告它的 contentSize 应该是什么?我有以下内容:

UIView  
+-UIScrollView
+-CustomView 1 with dynamic height depending on data
+-CustomView 2 with dynamic Height depending on data

UIViewController 使用数据创建自定义 View 的新实例,然后将它们作为 subview 添加到 UIScrollView。我遇到的问题是如何设置 ScrollView 的 contentSize 的值?现在,我没有这样做,并且 ScrollView 的内容被剪切,无法滚动。

  • 自定义 View 是否应该在其drawRect:中调用[parent setContentSize:]?
  • UIViewController 是否应该在创建后查询自定义 View 以获取其边界,然后调用 setContentSize?
  • 我应该子类化 UIScrollView 来重写 addSubView 来查询每个 subview 的高度吗?
  • 我还遗漏了什么吗?

我希望我能正确解释这一点。我对此很陌生,但仍在掌握事物。

最佳答案

ScrollView 的 contentSize 应该是所有自定义 View 的框架的联合大小。每当自定义 View 的大小发生变化,或者添加或删除自定义 View 时, View Controller 都应该计算新的 contentSize 并应用它。

从drawRect:设置它本质上可以设置一个无限循环。
使用边界不会给出父 View 内的坐标。
如果自定义 View 不改变大小,您可以子类化 UIScrollView。

关于iphone - UIScrollView 的 subview 应如何报告其 contentSize 范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2893438/

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