【发布时间】:2021-09-01 09:49:30
【问题描述】:
我有一个控制器,它以编程方式创建所需的视图,视图如下:
- 标题 = UIStackView
- body = UIScrollView 2.1 正文内容 = UIStackView 垂直
- 页脚 = UIStackView
视图 1、2、3 被添加到主视图 视图 2.1 添加到 2
布局完全按原样工作,应用的工作方式是从服务器获取一个 json 对象,其中包含需要添加到视图 1、2.1 和 3 的元素列表。
视图 1 和 3 不需要滚动。 视图 2.1 包含经常溢出屏幕的元素,因此需要滚动。
要添加的元素有多种类型,如UIImage、UIButton、UITextView、UITextField...
所有元素都完全添加到布局中,并且滚动继续工作没有任何问题,除非我专注于 UITextField,只要我专注,软键盘就会出现,如果我尝试滚动它,但是,尽快当我输入任何字符时,滚动视图会跳起来,滚动条变得非常小,我不能再正常滚动了。当我失去字段的焦点并且软键盘消失时,滚动问题仍然存在。
有谁知道是什么导致了这个问题?
更新:
我尝试使用约束。 工作版本的正文内容视图带有父视图的顶部和底部锚点(视图 2)。 移除这些约束并添加宽度和高度锚点会导致滚动视图不再滚动。
此外,我尝试手动设置滚动视图的 contentSize,但这也没有任何作用。
【问题讨论】: