2

我拼命地试图为我的UIScrollView问题找到任何解决方案,我知道这个论坛有很多讨论,但我找不到任何合适的解决方案。

我的问题是我的scrollview. 所以我不知道标签有多长。我scrollview的高度为 615(在界面生成器中),如果我scrollview用这个高度初始化它,它就不会滚动。

所以我的问题是,在我从数据库中加载文本后,我怎么知道我的身高是多少?ViewController如果这对高度很重要,我还有一个导航栏和一个标签栏?

我的 viewcontroller 的结构如下所示: - NavigationController - ViewController - View - ScrollView - Label1 - Label2 - Label...

4

1 回答 1

1

您需要采取以下小步骤:

  • 将您的滚动视图大小设置为不超过屏幕大小(即 (320, 480) 直到 iPhone 4 和 (320, 568) 对于 iPhone5),例如:

    CGSize screenSize = [[UIScreen mainScreen] bounds].size;
    UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, screenSize.width, screenSize.height)];
    
  • 现在设置你的内容大小scrollView

    [scrollView setContentSize:CGSizeMake(320, heightOfAllSubViews + heightOfVerticalSpaces)];
    

    这里heightOfAllSubViews是所有标签和imageViewheightOfVerticalSpaces的累积高度,是子视图之间所有垂直空间的累积高度。据我所知,这就是你这样做之后会很好的。

于 2013-02-02T08:57:25.097 回答