gpt4 book ai didi

iphone - 调整 UIView 的大小 - 扩展顶部

转载 作者:行者123 更新时间:2023-12-03 21:23:22 25 4
gpt4 key购买 nike

我想要调整 UIScrollView 内的 UIView 大小。

我可以通过以下方式轻松增加高度:

CGRect frame = self.drawinView.frame;
frame.size.height += 100;
self.drawinView.frame = frame;
self.drawinScrollView.contentSize = CGSizeMake(frame.size.width, frame.size.height);

一切都很好。

上面的代码将在 View 底部创建一个新的 View 区域,我可以填写该区域。

现在,当我调整 View 大小时,我只想重新绘制刚刚创建的 View 的新部分。我不想重新绘制整个 View 。

但是!当我需要扩展 View 顶部时,我遇到了困难。

正在做:

CGRect frame = self.drawinView.frame;
frame.origin.y -= 100;
self.drawinView.frame = frame;
self.drawinScrollView.contentSize = CGSizeMake(500, 600);

不起作用。

如何才能做到这一点而不需要重新绘制整个 View ?

最佳答案

您可以将内容大小设置为您想要的任何大数字,但您永远不能向左或向上滚动到超过左上角 0,0 的位置。如果你有一个 y 为 -100 的 View ,它不会让你滚动到 0 以上 100px。

相反,您需要将其保留在原来的位置,并将 contentOffset 设置为垂直 +100。

例如,如果您想将 View 大小调整 100 像素,您可以这样做:

CGRect frame = self.drawinView.frame;
frame.size.height += 100;
self.drawinView.frame = frame;
self.drawinScrollView.contentSize = CGSizeMake(frame.size.width, frame.size.height);
self.drawinScrollView.contentOffset = CGPointMake(0,100);

您可能需要手动告诉 drawinView 您想要将内容锁定到 View 的底部而不是顶部。

关于iphone - 调整 UIView 的大小 - 扩展顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2796311/

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