UIScrollView的问题

时间:2017-10-11 09:02:46

标签: ios swift uiscrollview

我有这样一个UIControllerView:

--Main View
  --UIScrollview
    --Label 1
    --Label 2

标签1有一个短(1行文字),标签2有一个很长的文字,所以我为标签2设置了: 0行,sizeToFit()。好的,当我在模拟器中运行我的应用程序时,一切看起来都不错,但是当我试图滚动屏幕时:

  1. 没有滚动条,而我没有禁用它
  2. 我的长标签2没有完全滚动,它只是从屏幕底部反弹
  3. 这个代码我有:

    self.labelSecond.text = content //very long content
    self.labelSecond.sizeToFit()
    

    对于UIScrollView,我启用了AutoSizing。请帮助,如何使我的长标签完全滚动,而不是从底部反弹?

    enter image description here

2 个答案:

答案 0 :(得分:1)

在你的故事板中制作一个如下图所示的视图结构

Image

由于某些原因,如果没有显示图像,我已经描述了下面的图像:

ScrollView内添加view scrollView的高度,并为top bottom leading和{{设置约束1}},并使视图trailing居中。

然后在视图中添加两个标签。对于第一个标签集,约为Horizontallytopleading。对于四面的第二个标签集限制。将标签trailing 0和line number设为line breaking。这将解决您的问题。您不必编写任何代码。

为了更好地理解,我创建了一个演示项目并将其上传到here

如果有任何疑问或疑问留下评论,我会尽力说清楚。

答案 1 :(得分:0)

您必须在UIView之后再添加一个UIScrollView。所以你的屏幕流程应该如下所示

--Main View
  --UIScrollview
    --Content View
       --Label 1
       --Label 2

Look at this image

注意: - 不要忘记为内容视图提供固定的高度