ObjC - 以编程方式向UIScrollView添加标签

时间:2015-02-18 12:41:10

标签: ios objective-c dynamic uiscrollview

您如何以编程方式向UIScrollView添加标签(或其他控件)?

我使用了这段代码,但我无法滚动。这让我相信它不会将标签添加到UIScrollView。

这是我的代码:

for (int i = 1; i <= 30; i++)
{
    UILabel *myLabel = [[UILabel alloc]initWithFrame:CGRectMake(10, (i * 50), 200, 40)];
    [myLabel setBackgroundColor:[UIColor clearColor]];
    [myLabel setText:@"Dynamic"];
    [self.Scroller addSubview:myLabel];
}

没有错误,它确实创建了标签,但就像我之前所说的那样,没有滚动。

我们做错了什么?

提前致谢。

3 个答案:

答案 0 :(得分:2)

[self.Scroller setContentSize:CGSizeMake(self.Scroller.frame.size.width, (30 * 50)];

答案 1 :(得分:1)

for (int i = 1; i <= 30; i++)
{
    UILabel *myLabel = [[UILabel alloc]initWithFrame:CGRectMake(10, (i * 50), 200, 40)];
    [myLabel setBackgroundColor:[UIColor clearColor]];
    [myLabel setTextColor:[UIColor blackColor]];
    [myLabel setText:@"Dynamic"];
    [self.Scroller addSubview:myLabel];
}



CGSize newContentSize=scroll.contentSize;
newContentSize.height+=30*50;
[self.Scroller setContentSize:newContentSize];

答案 2 :(得分:0)

您没有为scrollView设置contentSize,在循环中添加以下行: -

CGSize newContentSize=scroll.contentSize;
newContentSize.height+=i*50;
[self.Scroller setContentSize:newContentSize];