垂直滚动不能以编程方式运行UIScrollView

时间:2016-01-06 10:24:16

标签: ios uiscrollview vertical-scrolling

我不确定我的代码有什么问题。我在# Copypaste from docs import matplotlib.pyplot as plt import matplotlib.image as mpimg import numpy as np img=mpimg.imread('myimage.png') # end # from now on you can use img as an image, but make sure you know what you are doing! imgplot=plt.imshow(img) plt.show() 中嵌入了UIView。在UIScrollView中嵌入了一些控件。我期待UIView滚动发生,但事实并非如此。最终我无法查看所有控件。我只是粘贴下面的代码。感谢有人指出我在这里缺少的东西。

UIView

3 个答案:

答案 0 :(得分:0)

我想您提到scrollEnabled的{​​{1}}时遗漏了这一点,请尝试以下行并希望它适合您。

UIScrollView

还设置scrollView.scrollEnabled = YES; ,其大小应大于包含窗口的大小,以允许它可滚动。

contentSize

答案 1 :(得分:0)

您将contentview的大小设置为等于包含的scrollview的大小。逻辑上这意味着scrollview没有可以滚动的区域,因此将被修复。您需要使内容视图更长(对于垂直滚动)或更宽(对于水平滚动)。

答案 2 :(得分:0)

代码中scrollview的约束是不够的。使用自动布局时,请确保在垂直和水平方向上添加适当的约束链。

要滚动滚动视图,这些是一些通用指南,

  1. 确保UI的所有不同部分都有足够数量的垂直和水平约束。在屏幕上看一个简单的UILabel。它需要一个x,y位置 - 可以是一个前导/顶部,中心属性,它需要一个大小定义 - 固定宽度和高度或附近元素的约束。它需要明确定义的位置 - 大小组合,以便通过自动布局进行管理。

  2. 如果将translatesAutoresizingMaskIntoConstraints设置为NO,那么您所说的是该组件不应该使用该帧,该大小已经设置为约束要求。如果您想明确提及某些元素的框架或大小,请将其保留为YES。

  3. 如果内容视图在滚动视图的所有四个边都固定,并且滚动视图的大小,位置定义为约束或框架,则足以使内容可滚动。

  4. 如果contentview的内容大小在不同事件期间动态更改,则可以将scrollview.contentsize显式设置为contentview.width和contentview.height。

  5. 另外,请查看Apple上有关AutoLayout和Scrollviews的技术说明this