0

我是 iOS 开发领域的新手。

我试图让 UIScrollView 控件工作并遇到以下问题:

使用 Interface Builder 创建 UIScrollView 的步骤

我按照这个问题的答案中概述的步骤进行操作,一切都按我的意愿进行。但是,这似乎创建了一个静态大小的滚动视图。我真正追求的是一个动态大小的视图,它可能会滚动也可能不会滚动。例如,我放置了一个标签,而不是带有按钮的视图,我在 viewDidLoad 方法中为其设置了文本和行数。包含标签的视图设置为静态大小,因此滚动查看器不会尝试滚动并且标签的内容会溢出页面。

我错过了什么?

4

3 回答 3

0

你需要设置滚动的内容大小

CGPoint controlsCenter = ViewBottom.center;
if(Pointsvalue > 5)
{
controlsCenter.y += txtFldFrame1.frame.origin.y+20;
ViewBottom.center = controlsCenter;

[ScrollLag addSubview:ViewBottom];
}

[ScrollLag setContentSize:(CGSizeMake(0, controlsCenter.y+100))];

确保您的标签高度在输入文本时发生变化......

于 2013-06-18T17:45:15.787 回答
0

我对原始问题的评论中的 URL 为我提出的问题提供了解决方案。

于 2013-06-19T15:04:40.643 回答
0

我现在正在处理的项目中有一个动态大小的 UIScrollView。这就是我所做的:

self.myScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 250, 748)];
[self.myScrollView setBackgroundColor:[UIColor blackColor]];
int heightCounter = 10;

UIButton *newButton = [UIButton buttonWithType:UIButtonTypeCustom];
newButton.frame = CGRectMake(10, heightCounter, 200, 40);
[newButton setBackgroundColor:[UIColor clearColor]];
[newButton addTarget:self action:@selector(someMethod:) forControlEvents:UIControlEventTouchUpInside];
[newButton setTitle:@"ButtonTitle" forState:UIControlStateNormal];
[newButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[self.myScrollView addSubview:newButton];
heightCounter += 50;

// add additional items to the myScrollView and remember to increase the heightCounter

self.myScrollView.contentSize = CGSizeMake(250, heightCounter);
self.myScrollView.scrollEnabled = YES;
[self.view addSubview:self.myScrollView];
于 2013-06-19T16:08:51.210 回答