因为我有一个滚动视图,所以我将View Controller设置为具有固定大小的自由格式(因为这是我所学到的)。我想让我的滚动视图以相同的contentSize和可滚动的大小开头(这样一来您就无法滚动),然后在按下按钮之后,可滚动的高度会增加,以便您可以滚动。我已经在iPhone Xr模型模拟器上测试了所有这些功能,并且在我尝试切换到其他iPhone模型(iPhone 7+)之前,它都运行良好。当我使用7+(高度较短)测试程序时,scrollView最初是可滚动的(本来不是应该滚动的),我想这可能是因为我已将View Controller设置为固定的自由格式尺寸(适合较高的iPhone Xr型号),因此当我尝试使用较小的iPhone型号时,它的长度仍然相同,因此最初是可滚动的。
我想让我的scrollView从iPhone屏幕的顶部移到大约一半,在我所拥有的按钮上方。我最初的经历是:
scrollView.contentSize.height = 404
我现在知道那是完全错误的,因为我已经对其进行了硬编码,但是我不知道我还能找到从iPhone屏幕顶部到按钮的高度。也许是这样的:
scrollView.contentSize.height = button.frame.origin.y - /*y position of top of iPhone screen*/
我还考虑了scrollView的高度可能只是按钮的y位置,但是,因为我的View Controller高度是固定的,所以对于较小显示屏的iPhone,scrollView会比我想要的大得多(大小,您一开始就无法滚动)。
希望这很有意义,谢谢。
答案 0 :(得分:0)
如何获取屏幕尺寸:
let screenFrame = UIScreen.main.bounds // returns a CGRect
let screenHeight = screenFrame.height // returns a CGFloat
编辑:如果您想完全使用情节提要,请尝试从scrollView
到view
设置所需的约束,以将其放置在所需的位置。
然后可以将contentView
内scrollView
的高度设置为等于scrollView
的高度,但优先级较低。
我认为这应该可行,尽管从头开始时更容易解释。让我知道怎么回事。