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