UIScrollView:addSubview不添加项目

时间:2013-01-02 17:44:10

标签: ios uiscrollview

我花了几个小时,试图解决我的问题,但我自己找不到解决方案。 我有一些代码,将UIView添加到我的scrollView:

- (void) loadSpareparts:(VitoParts*) parts{
    data = [VitoServer fetchPartList:parts];

    int itemHeight = 100;
    [scrollView setContentSize:CGSizeMake(scrollView.frame.size.width, (data.count * itemHeight))];

    NSLog(@"Item count: %d", data.count);

    for (int i=0; i<data.count; i++) {
        VitoPart *sparepart = [data objectAtIndex:i];
        VIOnePart *partView = [[VIOnePart alloc] init];

        [partView setFrame:CGRectMake (0, (i * itemHeight), scrollView.frame.size.width, itemHeight)];

        [partView setData:sparepart];
        [scrollView addSubview:partView];
        //        [self.view addSubview:partView];
    }

    NSLog(@"In scrollView: %d", scrollView.subviews.count);
}

但它不起作用。我的上一条日志消息告诉scrollView中有0项。 如果我将partView添加到self.view,则说明工作正常。 IBOutlet也连接到XIB编辑器中的ScrollView。

我应该在哪里寻找解决方案?

感谢。

1 个答案:

答案 0 :(得分:2)

您是在-(void)viewDidLoad之前还是之后调用此方法?如果之前,视图将不会加载,因此scrollView将为零。